AWS Cognito 在尝试登录时出现 BadRequest 错误

Rah*_*Raj 1 spring spring-security amazon-web-services spring-boot amazon-cognito

我试图实现 AWS cognito spring boot 示例,如此处所述

我在单击“使用 Amazon Cognito 登录”时收到以下错误:

{"code":"BadRequest","message":"The server did not understand the operation that was requested.","type":"client"}
Run Code Online (Sandbox Code Playgroud)

URI 是:

https://cognito-idp.{region}.amazonaws.com/{my-pool-id}/authorize?response_type=code&client_id={my-client-id}&scope=openid&state=NHfXN1aWjqUWiRBp0FZzIoZYHx-EmcuUp8sGDKUaODs%3D&redirect_uri=http://localhost:8080/login/oauth2/code/cognito&nonce=CgC_P_GCnLlHQ4W_9nT04hzwkjaDdPGs7OaLaklP0wU
Run Code Online (Sandbox Code Playgroud)

以下配置是我自己在排查问题时验证的。

  1. 客户端 ID、客户端密码、池 ID、区域等与我的 AWS 控制台中的配置完全相同。这里没有错误。

  2. 我正在使用 Cognito 提供的 UI 进行登录。域已添加并验证 Cognito UI 正在重定向到登录屏幕。

  3. 应用程序客户端设置中的回调 URI 与我的配置中的重定向 ui 相同。

我的示例配置文件链接到此处以供参考。

你能告诉我这里出了什么问题吗?我在这里错过了什么吗?

小智 5

我遇到过同样的问题。

对我来说,我做错了两件事,并通过执行以下操作来修复:

  1. 在应用程序客户端设置中启用身份提供商

  2. 指定域名(我在spring设置中根本没有使用)