Итак, вот мой сценарий: у меня есть веб-приложение, разработанное с бессерверной архитектурой на AWS. Я использую S3 для размещения своего статического контента, и все мои коды на стороне сервера реализованы в функции Lambda и доступны через шлюз API. Теперь я пытаюсь использовать Cognito и пулы пользователей для реализации уровня аутентификации.
Я следовал инструкциям на странице эту страницу и создали пул пользователей. После того, как я это сделал, я могу протестировать свой пул пользователей, введя такой URL-адрес в адресную строку браузера:
https://my_subdomain_under_aws/login?response_type=code&client_id=my_app_client_id&redirect_uri=my_callback_url
Важной частью (для меня) является response_type=code
, который, согласно той же документации, также может быть response_type=token
. На данный момент я не уверен, в чем их различия и как мне выбрать между ними.
В любом случае, открытие указанного URL-адреса приведет вас к форме входа в систему AWS по умолчанию. Как только пользователь будет успешно аутентифицирован, браузер будет перенаправлен на предоставленный redirect_uri
с дополнительным параметром, подобным этому /?code=12345678-1234-1234-1234-123456789012
. На данный момент я думаю, что должен извлечь code
(используя Javascript на стороне клиента), передать его на шлюз API и использовать его для аутентификации пользователя. Но я не уверен, как это сделать. Я нашел эту страницу объясняя шаги для токенов, но как насчет кодов?