为什么AWS Cognito每次都要求我选择使用哪个应用程序客户端?

3

我正在使用AWS Cognito进行身份验证。

每次访问Cognito域名时,它会要求我选择应用程序客户端。

Cognito appclient select screen

有没有办法停止Cognito要求我选择要用于身份验证的应用程序客户端。

请告诉我方法。

2个回答

3
你发的截图要求你选择要登录的用户,这与App Client无关。每个用户池的应用程序客户端都使用池中相同的用户集,但具有不同的身份验证设置。如果您想为Cognito身份验证引擎选择应用程序客户端,则可以在Cognito托管UI域中指定应用程序客户端ID。以下是示例URL:example
https://auth.example.com/login?response_type=code&client_id=<your_app_client_id>&redirect_uri=<your_callback_url>

如果您在托管的用户界面域名/自定义域名中指定了应用程序客户端ID,那么您只能在该应用程序客户端上运行引擎。


0

在“继续使用”文本之后的文本不是应用程序客户端,而是您已登录的用户名。

使用用户名密码凭据登录后,会在您的Cognito域上设置会话Cookie以指示您已经登录。此会话Cookie过期时间不可配置,并设置为1小时。 注销终点将删除此会话cookie。

当您重新进入Cognito登录页面时,它会检测到您已经有一个会话,并向您呈现“继续使用”页面以确认您仍要继续作为此用户。

如果您想避开此屏幕,则可以使用授权终点,它将首先检查您是否具有Cognito域会话,如果有,则自动将您重定向到重定向URI(带有授权代码的应用程序),否则它将通过登录终点将您重定向到登录表单。

https://COGNITO_SUBDOMAIN.auth.us-east-1.amazoncognito.com/oauth2/authorize?response_type=code&client_id=APP_CLIENT_ID&redirect_uri=REDIRECT_URI&response_type=code

授权终端点: https://docs.aws.amazon.com/cognito/latest/developerguide/authorization-endpoint.html


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接