Назад | Перейти на главную страницу

Как использовать Amazon Cognito в качестве поставщика удостоверений SSO OpenID

В настоящее время мы используем Google в качестве поставщика удостоверений OpenID для нашей веб-платформы. Нам нужно отойти от этого. Я открыл для себя Amazon Cognito (мы уже используем EC2 / S3 и все остальное).

Я обнаружил здесь well_known: https://cognito-idp.us-east-1.amazonaws.com/us-east-1_UxUwcIy3y/.well-known/openid-configuration

Затем я получил authorization_endpoint, который https://cognito-idp.us-east-1.amazonaws.com/us-east-1_UxUwcIy3y.

Однако что бы я к нему ни перешел, в том числе response_type, scope, client_id, redirect_uri, это всегда дает мне:

{"code":"BadRequest","message":"The server did not understand the operation that was requested.","type":"client"}

Без другой информации.

Похоже, что по этой функции нет какой-либо публичной документации. Возможно ли то, что я пытаюсь сделать (заставить Cognito действовать как Google OpenID IDP)? Есть ли у кого-нибудь документация относительно того, что передать в authorization_endpoint. Я понимаю, что Amazon Cognito Mobile SDK позволяет встраивать систему единого входа в приложения, но, возможно, это невозможно сделать так, как я. Я уже настроил пул пользователей.

Я столкнулся с той же проблемой. К сожалению, похоже OpenId Connect по-прежнему не поддерживается для пользовательских пулов Cognito, и вам необходимо использовать пулы идентификаторов. На Форум AWS Я нашел следующий ответ:

Конечная точка авторизации в настоящее время является просто заполнителем для нашего будущего выпуска, в котором я могу действовать как IDP OpenId, но на сегодняшний день он ничего не делает, и ожидаемая ошибка, которую вы видите. Мы будем рассматривать это как запрос функции для наших будущих выпусков.

Как ни странно, ведь Using Tokens with User Pools документация относится спецификации OpenId Connect.