Есть ли у AWS функция без сервера (API-шлюз и Lamda) недостатки безопасности? - PullRequest
0 голосов
/ 20 февраля 2020

Привет, я начинающий пользователь AWS, и это моя дилемма.

Я создал конечную точку без сервера, я создал функцию lamda на основе "Node.js" (это запрос POST ), настроил шлюз API и создал сцену и, наконец, дал URL-адрес конечной точки для клиентов, чтобы использовать ресурс в качестве службы RESTFul.

Пользователи получали данные, и все шло хорошо, пока я не узнал, что у пользователей была простая страница HTML с кодом "JQuery", встроенным в страницу HTML, и, к моему удивлению, на этой странице был вставлен ключ API в заголовочную часть запроса в виде "headers: {" x -api-key ":}".

Это идеальный способ реализации? так как я смог увидеть значение ключа при просмотре исходного кода на Chrome, открыв страницу HTML.

Ответы [ 2 ]

1 голос
/ 21 февраля 2020

API-ключи не предназначены для безопасности. Они предназначены в первую очередь для поддержки планов использования и управления регулированием клиента (ключ API) для каждого клиента. Ключи API не являются безопасными и не должны рассматриваться как средство аутентификации.

1 голос
/ 20 февраля 2020

Как правильно заметил Амит, api-key, которым вы поделились с вашими пользователями, генерируется один раз и используется всегда. Нет гарантии, где и как он будет использоваться.

Если вам нужна строгая защита, вы должны использовать кратковременные временные учетные данные. Эти учетные данные действительны в течение короткого времени (например, 1 час), и срок его действия истекает после этого.

Это просто, поскольку пользователи будут входить через веб-страницу со своим именем пользователя, паролем, приложение будет временно учетные данные в результате успешного входа в систему.

Эти временные учетные данные должны использоваться для выполнения вызовов API. API проверяет учетные данные перед предоставлением доступа к ресурсам.

надеюсь, что это поможет.

...