SAML 会话在 Amazon Cognito 用户池中启动 - Amazon Cognito
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

SAML 会话在 Amazon Cognito 用户池中启动

Amazon Cognito 支持服务提供商发起的(SP 发起的)单点登录 (SSO) 和 IDP 发起的 SSO。作为最佳安全实践,请在您的用户池中实施 SP 启动的 SSO。SAML V2.0 技术概述的第 5.1.2 节描述了 SP 启动的 SSO。Amazon Cognito 是您的应用程序的身份提供商 (IdP)。该应用程序是为经过身份验证的用户检索令牌的服务提供程序 (SP)。但是,当您使用第三方 IdP 对用户进行身份验证时,Amazon Cognito 就是 SP。当您的 SAML 2.0 用户使用 SP 启动的流程进行身份验证时,他们必须始终首先向 Amazon Cognito 发出请求,然后重定向到 IdP 进行身份验证。

对于某些企业使用案例,对内部应用程序的访问从企业 IdP 托管的控制面板上的书签开始。当用户选择书签时,IdP 会生成一个 SAML 响应并将其发送到 SP 以向应用程序验证用户身份。

您可以在用户池中配置 SAML IdP 以支持 IdP 启动的 SSO。当你支持 IDP 发起的身份验证时,Amazon Cognito 无法验证它是否已请求收到的 SAML 响应,因为 Amazon Cognito 不会通过 SAML 请求启动身份验证。在 SP 发起的 SSO 中,Amazon Cognito 会设置状态参数,以验证针对原始请求的 SAML 响应。通过 SP 发起的登录,您还可以防范跨站请求伪造 (CSRF)。

有关如何在不希望用户与用户池托管用户界面交互的环境中构建 SAM 的示例,请参阅。示例场景:在企业控制面板中为 Amazon Cognito 应用程序添加书签