AWS Java SDK для обслуживания для аутентификации потока учетных данных клиента Oauth с помощью пула пользователей Cognito? - PullRequest
0 голосов
/ 10 апреля 2019

Ситуация:

У меня запущена служба фонового процесса java, которой требуется доступ к защищенной конечной точке API REST.

Конечная точка API - лямбда-функция AWS, работающая за Amazon API Gateway с использованием инфраструктуры без серверов.Он защищен с помощью авторизатора пула пользователей Amazon Cognito.

Я создал App Client для моей фоновой службы Java, которая подключена к пулу пользователей.

Я успешно получил токен аутентификации клиента и получил доступ к конечной точке API с помощью cURL и HttpClient.

Вопрос:

Доступна ли эта функция в AWS Java SDK (v1 или v2)?

Я просматривал документацию по SDK и пока ничего не нашел.Я что-то пропустил или еще не нашел?Или это просто сейчас недоступно?

1 Ответ

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

В AWS Java SDK (любая версия) нет необработанного вызова API для Cognito для потока аутентификации учетных данных клиента.Однако вы можете вручную написать свою собственную логику для реализации этого потока, поскольку последовательность шагов, включенных в учетные данные клиента (поток между компьютерами), может быть выполнена с помощью обычной Java.Этот поток требует POST-запроса к конечной точке OAuth 2.0 TOKEN от Cognito [a].Поскольку этот поток по существу требует запроса конечной точки, я не думаю, что разработчики Cognito разработали бы доступный API для достижения потока.

Для получения более подробной информации, я бы попросил вас взглянуть на эту официальную документацию [b] и на это учебное пособие, опубликованное не AWS [c].

Ссылки

[a].https://docs.aws.amazon.com/cognito/latest/developerguide/token-endpoint.html

[b].https://aws.amazon.com/blogs/mobile/understanding-amazon-cognito-user-pool-oauth-2-0-grants/

[с].https://lobster1234.github.io/2018/05/31/server-to-server-auth-with-amazon-cognito/

...