aws Cognito получить токен JWT в один вызов API - PullRequest
0 голосов
/ 05 марта 2020

Как получить токен jwt за один шаг (вызов API) из aws cognito oauth2 / конечная точка токена, передавая имя пользователя и пароль

curl --location --request POST 'https://xxx.auth.us-east-2.amazoncognito.com/oauth2/token' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--header 'Authorization: Basic a......k' \
--data-urlencode 'grant_type=client_credentials' \
--data-urlencode 'client_id=t34...nu'

- Base64ecoded username: password

Response- "error": "invalid_client"

Настройки клиента приложения:

  Allowed OAuth Flows : Authorization code grant, Implicit Grant
  Allowed OAuth scope : email , openid
App clients : ALLOW_USER_PASSWORD_AUTH

Я тоже пробовал oauth2 / авторизоваться, но в ответ получаю html страницу

1 Ответ

0 голосов
/ 06 марта 2020

Поток учетных данных клиента к конечной точке токена должен получить токен доступа для связи между компьютерами. Он не основан на данном пользователе, поэтому имя пользователя и пароль не требуются. См. «Обмен учетными данными клиента для токена доступа» https://docs.aws.amazon.com/cognito/latest/developerguide/token-endpoint.html

Чтобы выполнить вход с помощью оконечных точек oauth, он предназначен для этого через HostedUI или внешний IDP. Тем не менее, вы можете сделать это программно, но для авторизации и авторизации конечной точки потребуется вызов. Вы можете увидеть пример в python здесь: https://github.com/starkshaw/aws-cognito-user-pool-custom-scope

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