AWS Lambda с подходом Cognito правильно - PullRequest
0 голосов
/ 11 апреля 2019

Я хотел бы сделать простой API доступным для клиента.Клиент использует вывод моего API в своем приложении.API довольно прост.Я внедряю с помощью серверной платформы в AWS LambdaФункции, предоставляемые через API, не используют никакие другие сервисы AWS (например, S3 и т. Д.).

Мой вопрос заключается в том, какой тип аутентификации использовать.Я думал, чтобы попытаться использовать Cognito для этого.

1.Вопрос: Имеет ли это смысл?Или для этого простого варианта использования даже более простой вариант доступен?

2.Вопрос: Так что я правильно понял.Сначала я бы создал пул пользователей.Затем создать пул удостоверений на основе этого пула пользователей?

3.Вопрос: В конце мой клиент получает токен доступа от cognito и присоединяет заголовок в запросе.Это дает ему доступ через API-шлюз к моему REST API, и запускается лямбда-функция.Но как клиент в первую очередь может создать «учетную запись» в пуле пользователей?Причастен ли я к этому?

1 Ответ

1 голос
/ 12 апреля 2019

Cognito Authentication звучит как хороший вариант для этого варианта использования. Вы можете иметь поток следующим образом:

Cognito User Pool Authentication -> Token passed as header to the API in API Gateway -> API returns JSON data after successful authentication [А].

Я хотел бы подчеркнуть, что пула Cognito User достаточно для удовлетворения этого варианта использования. Пулы пользователя Cognito используются для аутентификации, а пулы идентификации Cognito используются для авторизации. По сути, Cognito Identity Pools генерирует временные учетные данные AWS, которые предоставляются AWS STS. Следовательно, я не вижу, где вы могли бы потребовать Cognito Identity Pools здесь.

И чтобы сгенерировать токен JWT, вам нужно, чтобы пользователь выполнил успешную операцию аутентификации. Чтобы выполнить успешную операцию аутентификации, которая возвращает токены, вы можете взглянуть на вызов API InitiateAuth [b].

Ссылки

[а]. https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-integrate-with-cognito.html

[Ь]. https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_InitiateAuth.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...