标识提供者
更新时间:2015 年 6 月 19 日
适用于:Azure
重要
ACS 命名空间可以将其 Google 标识提供程序配置从 OpenID 2.0 迁移到 OpenID Connect。 迁移必须在 2015 年 6 月 1 日之前完成。 有关详细指导,请参阅将 ACS 命名空间迁移到 Google OpenID 连接。
在Microsoft Azure Active Directory 访问控制 (也称为访问控制服务或 ACS) 中,标识提供者是一种对用户或客户端标识进行身份验证并颁发 ACS 使用的安全令牌的服务。 配置标识提供者时,ACS 信任该标识提供者颁发的令牌,并将这些令牌中的声明用作 ACS 规则引擎的输入。 ACS 规则引擎转换或传递这些声明,并将其包含在它颁发给信赖方应用程序的令牌中。 访问控制命名空间的所有者可以在命名空间中配置一个或多个标识提供者。
在 ACS 中,标识提供者可以与多个信赖方应用程序相关联。 同样,ACS 信赖方应用程序可以与多个标识提供者相关联。 有关信赖方应用程序的详细信息,请参阅 信赖方应用程序。
ACS 管理门户为配置以下标识提供者提供内置支持:
除了这些标识提供者之外,ACS 还支持通过 ACS 管理服务以编程方式配置以下标识提供者类型:
WS 信任标识提供程序
基于 OpenID 的标识提供程序
WS 信任标识提供程序
WS-Trust标识提供者使用 WS-Trust 协议将标识声明传递给 ACS,最常在 Web 服务方案中使用。 许多WS-Trust标识提供者还支持WS-Federation,并且可以在 ACS 中配置为WS-Federation标识提供者来创建所需的信任关系。 WS-Trust标识提供者的示例 (也是WS-Federation标识提供者) ,这使你可以将企业 Active Directory 服务帐户与 ACS 集成。 有关详细信息,请参阅 如何:将 AD FS 2.0 配置为标识提供者。
基于 OpenID 的标识提供程序
ACS 支持使用 OpenID 2.0 身份验证协议与基于 OpenID 的网站和 Web 应用程序的基于 OpenID 的标识提供者联合。 ACS OpenID 实现允许在 ACS 中将 OpenID 身份验证终结点配置为标识提供者实体的一部分。 为信赖方应用程序呈现 ACS 登录页时,ACS 将构造 OpenID 身份验证请求作为标识提供者登录 URL 的一部分。 用户选择标识提供者并在请求的 URL 处登录后,OpenID 响应将返回到 ACS 规则引擎处理它的 ACS。 ACS 使用 OpenID 属性Exchange扩展检索 OpenID 用户属性,并将这些属性映射到随后在颁发给信赖方应用程序的令牌响应中输出的声明。
ACS 支持的基于 OpenID 的标识提供者的两个示例是 Google 和 Yahoo!,可在 ACS 管理门户中配置。 有关详细信息,请参阅 Google 和 Yahoo!。
可以使用 ACS 管理服务以编程方式配置支持 OpenID 2.0 身份验证终结点的其他标识提供者。 有关详细信息,请参阅 如何:使用 ACS 管理服务配置 OpenID 标识提供者。
支持的声明类型
下表显示了可从 OpenID 标识提供者向 ACS 提供的声明类型。 默认情况下,ACS 中的声明类型使用 URI 进行唯一标识,以便符合 SAML 令牌规范。 这些 URI 也用于标识其他令牌格式的声明。
声明类型 | URI | 说明 |
---|---|---|
名称标识符 |
https://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier |
标识提供程序返回的 openid.claimed_id 值。 |
名称 |
https://schemas.xmlsoap.org/ws/2005/05/identity/claims/name |
标识提供者通过 OpenID 属性Exchange扩展返回的属性http://axschema.org/namePerson。 如果此属性不存在,则声明值将是连接 http://axschema.org/namePerson/first 和 http://axschema.org/namePerson/last. |
电子邮件地址 |
https://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress |
标识提供者通过 OpenID 属性Exchange扩展返回的属性http://axschema.org/contact/email。 |
标识提供者 |
https://schemas.microsoft.com/accesscontrolservice/2010/07/claims/IdentityProvider |
ACS 提供的声明,告知信赖方应用程序使用哪个 OpenID 标识提供者对用户进行身份验证。 |