Amazon Cognito
开发人员指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 Amazon AWS 入门

向用户池添加 SAML 身份提供商

可允许 Web 和移动应用程序用户通过 SAML 身份提供商 (IdP)(如 Microsoft Active Directory 联合身份验证服务 (ADFS)Shibboleth)登录。选择支持 SAML 2.0 标准的 SAML 身份提供商。

利用内置托管 Web UI,Amazon Cognito 将为所有经过身份验证的用户提供令牌处理和管理,让后端系统能够基于一组用户池令牌实现标准化。您可以在 AWS 管理控制台中、使用 AWS CLI 或者使用 Amazon Cognito API 调用,来创建和管理 SAML IdP。要开始使用控制台,请参阅使用 AWS 管理控制台将“通过基于 SAML 的身份提供商登录”添加到用户池


                社交登录的身份验证概述

注意

通过第三方 (联合身份验证) 进行登录可在 Amazon Cognito 用户池中实现。此功能不依赖于通过 Amazon Cognito 身份池 (联合身份) 实现的联合身份验证。

您需要更新 SAML 身份提供商并配置用户池以支持此功能。请参阅 SAML 身份提供商的文档,了解有关如何将您的用户池添加为 SAML 2.0 身份提供商的依赖方或应用程序的信息。

请参阅 SAML 身份提供商的文档,了解有关如何将您的用户池添加为 SAML 2.0 身份提供商的依赖方或应用程序的信息。在 SAML 身份提供商中为 SAML 2.0 POST 绑定配置此终端节点:

https://<yourDomainPrefix>.auth.<region>.amazoncognito.com/saml2/idpresponse

您可以在 Amazon Cognito 控制台域名选项卡上,查找您的用户池的域前缀和区域值。

对于一些 SAML 身份提供商,您还需要采用以下形式提供 SP urn /受众 URI/SP 实体 ID:

urn:amazon:cognito:sp:<yourUserPoolID>

您可以在 Amazon Cognito 控制台应用程序客户端设置选项卡中查找用户池 ID。

您还应配置 SAML 身份提供商,以便为您的用户池中需要的任何属性提供属性值。通常情况下,email 是用户池的必需属性。在这种情况下,SAML 身份提供商应在 SAML 断言中提供一个 email 值 (声明)。

Amazon Cognito 用户池支持 SAML 2.0 与绑定后终端节点联合。这使您的应用程序不必检索或分析 SAML 断言响应,因为用户池直接通过用户代理从身份提供商接收 SAML 响应。您的用户池代表您的应用程序充当服务提供商 (SP)。Amazon Cognito 支持 SP 发起的单一登录 (SSO),如 SAML V2.0 技术概览的第 5.1.2 部分中所述。