如何使用 Amazon Cognito 作为 SSO OpenID 身份提供商

如何使用 Amazon Cognito 作为 SSO OpenID 身份提供商

我们目前使用 Google 作为我们 Web 平台的 OpenID 身份提供商。我们需要摆脱它。我发现了 Amazon Cognito(我们已经使用 EC2/S3 和其他产品)。

我在这里发现了众所周知的: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总是给我:scopeclient_idredirect_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 提供了一种在应用程序中嵌入 SSO 的方法,但可能无法像我这样做直接执行此操作。我已经设置了一个用户池。

答案1

我遇到了同样的问题。不幸的是,OpenId ConnectCognito 用户池似乎仍然不支持,您需要使用身份池。AWS 论坛我找到了以下答案:

授权端点目前只是我们未来版本的一个占位符,我可能会在其中充当 OpenId IDP,但截至目前它还不执行任何操作,您看到的错误是意料之中的。我们会将此视为我们未来版本的功能请求。

奇怪的是,因为Using Tokens with User Pools文档參考文獻符合 OpenId Connect 规范。

相关内容