本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
示例场景:在企业控制面板中为 Amazon Cognito 应用程序添加书签
您可以在自己的控制面板SAML或 OIDCIdP 控制面板中创建书签,以便为 Amazon Cognito 用户SSO池提供对 Web 应用程序的访问权限。您可以通过不要求用户使用托管 UI 登录的方式链接到 Amazon Cognito。为此,请在您的门户中添加一个登录书签,该书签按以下格式重定向到您的 Amazon Cognito 用户池。对端点授权
https://
mydomain.us-east-1.amazoncognito.com
/authorize?response_type=code
&identity_provider=MySAMLIdP
&client_id=1example23456789
&redirect_uri=https://www.example.com
注意
您还可以在授权终端节点请求中使用 idp_identifier
参数而不是 identity_provider
参数。IdP 标识符是您在用户池中创建身份提供商时可以配置的备用名称或电子邮件域。请参阅 SAML身份提供者名称和标识符。
当您在对 /authorize
的请求中使用适当的参数时,Amazon Cognito 会静默开始 SP 启动的登录流程并将您的用户重定向到使用您的 IdP 登录。
首先,请在您的用户池中添加一个 SAML IdP。创建一个应用程序客户端,该客户端使用您的 SAML IdP 进行登录,并将您的应用程序URL的作为授权回调。URL有关应用程序客户端的更多信息,请参阅用户池应用程序客户端。
在将这种经过身份验证的访问权限部署到您的门户之前,请测试 SP 发起的从托管用户界面登录您的应用程序。有关如何在 Amazon Cognito 中配置 SAML IdP 的更多信息,请参阅。配置您的第三方SAML身份提供商
下图显示了模拟 Id SSO P 启动的身份验证流程。您的用户可以通过公司门户网站中的链接向 Amazon Cognito 进行身份验证。
满足要求后,为你的创建一个书签对端点授权,其中包含identity_provider
或idp_identifier
参数。用户身份验证按以下步骤进行。
-
您的用户登录到 SSO IdP 控制面板。用户有权访问的企业应用程序将填充此控制面板。
-
您的用户选择指向应用程序的链接,该应用程序向 Amazon Cognito 进行身份验证。在许多SSO门户网站中,您可以添加自定义应用程序链接。任何可用于在SSO门户URL中创建公众链接的功能都将起作用。
-
您在SSO门户中的自定义应用程序链接会将用户定向到用户池对端点授权。该链接包括
response_type
、client_id
、redirect_uri
和identity_provider
的参数。identity_provider
参数是您在用户池中提供 IdP 的名称。您还可以使用idp_identifier
参数而不是identity_provider
参数。用户通过包含idp_identifier
或identity_provider
参数的链接访问您的联合终端节点。此用户绕过登录页面并直接导航以使用您的 IdP 进行身份验证。有关命名的更多信息 SAML IdPs,请参阅SAML身份提供者名称和标识符。示例 URL
https://
mydomain.us-east-1.amazoncognito.com
/authorize? response_type=code
& identity_provider=MySAMLIdP
& client_id=1example23456789
& redirect_uri=https://www.example.com
-
Amazon Cognito 通过请求将用户会话重定向到你的 IdP。SAML
-
您的用户在登录控制面板时可能已收到 IdP 的会话 Cookie。您的 IdP 使用此 Cookie 以静默方式验证用户,并通过响应将他们重定向到 Amazon Cognito 终端节点
idpresponse
。SAML如果不存在活动会话,则您的 IdP 会在用户发布响应之前对其重新进行身份验证。SAML -
Amazon Cognito 会验证SAML响应,并根据断言创建或更新用户个人资料。SAML
-
Amazon Cognito 使用授权码将用户重定向到您的内部应用程序。您已将内部应用程序URL配置URL为应用程序客户端的授权重定向。
-
您的应用程序用授权码交换 Amazon Cognito 令牌。有关更多信息,请参阅 令牌端点。