Я понимаю, что вы можете реализовать "неявный поток" без использования размещенного пользовательского интерфейса, но вы хотите знать, как реализовать "поток предоставления авторизации".
Вы можете использовать любой клиент HTTPв вашем веб-приложении для отправки HTTP-запросов к конечным точкам Cognito Auth для прохождения потока предоставления кода.Это конечные точки API REST, а также SDK для выполнения операции не требуется.
Пожалуйста, ознакомьтесь с приведенными ниже шагами, чтобы понять ход процесса с использованием вызовов API:
1)Сделайте GET-запрос к конечной точке AUTHORIZATION для получения токенов XSRF [1].Вам нужно будет передать необходимые параметры при выполнении этого запроса.Обязательные параметры: response_type (код или токен), client_id и redirect_uri.В соответствии с вашим вариантом использования, поскольку вы используете «Поток предоставления авторизации», вам нужно установить значение response_type в значение «code».Как только вы сделаете этот запрос, вы получите токен XSRF в ответе в виде файла cookie.Этот токен XSRF понадобится на следующем шаге.
2) Сделайте POST-запрос к конечной точке LOGIN для получения токенов [2].Вам необходимо передать те же обязательные параметры, которые указаны при выполнении запроса АВТОРИЗАЦИЯ.Наряду с необходимыми параметрами вы можете передать параметры тела POST: токен CSRF, имя пользователя и пароль.Как только мы сделаем этот запрос, вы сможете получить токены в ответе.Он также предоставляет Cookie в ответе, который можно использовать позже, чтобы сделать запрос на обновление токенов.
3) Сделайте POST-запрос к конечной точке TOKEN для получения токенов обновления [3].Нам нужно передать необходимые параметры при оформлении запроса.Обязательные параметры запроса - grant_type и client_id.Как только вы сделаете успешный запрос, вы получите новый набор токенов в ответе.
============
Ссылки:
[1] Конечная точка авторизации: http://docs.aws.amazon.com/cognito/latest/developerguide/authorization-endpoint.html
[2] Конечная точка входа в систему: http://docs.aws.amazon.com/cognito/latest/developerguide/login-endpoint.html
[3] Конечная точка токена: http://docs.aws.amazon.com/cognito/latest/developerguide/token-endpoint.html