Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Microsoft Entra 租户可以直接与使用 SAML 或 WS-Fed 身份提供者(IdP)的外部组织进行联合身份验证。 然后,外部组织中的用户可以使用自己的 IdP 托管帐户在邀请兑换期间登录到应用或资源,而无需创建新的Microsoft Entra凭据。 注册或登录应用时,用户将被重定向到其 IdP,然后在用户成功登录后返回到Microsoft Entra。
先决条件
- 查看 SAML/WS-Fed 标识提供者中的配置注意事项。
- 工作人员租户。
注意
IdP 的颁发者值必须是符合 RFC 3986 格式的有效 URI(例如, https://testdev.example.com 或 http://www.example.com/exk10l6w90DHM0yi)。 单字或非 URI 值(例如, testdev)不受支持,门户拒绝。
这与 Microsoft Entra ID 的安全标识符模式保持一致,如标识符 URI 的限制中所述。 对于 SAML IdP,颁发者必须根据 SAML 2.0 标准和Microsoft Entra 验证规则,以 URI 的形式唯一标识提供程序。
如何配置 SAML/WS-Fed IdP 联合身份验证
步骤 1:确定合作伙伴是否需要更新其 DNS 文本记录
使用以下步骤来确定合作伙伴是否需要更新其 DNS 记录以启用与您的联合功能。
检查合作伙伴的 IdP 被动身份验证 URL,以查看域是否与目标域或目标域中的主机匹配。 换言之,为
fabrikam.com设置联合时:- 如果被动身份验证终结点是
https://fabrikam.com或https://sts.fabrikam.com/adfs(同一域中的主机),则不需要更改 DNS。 - 如果被动身份验证终结点为
https://fabrikamconglomerate.com/adfs或https://fabrikam.co.uk/adfs,则域与 fabrikam.com 域不匹配,因此,合作伙伴需要为其 DNS 配置添加身份验证 URL 的文本记录。
- 如果被动身份验证终结点是
如果根据上一步需要进行 DNS 更改,则要求合作伙伴向其域的 DNS 记录中添加 TXT 记录,如下例所示:
fabrikam.com. IN TXT DirectFedAuthUrl=https://fabrikamconglomerate.com/adfs
步骤 2:配置合作伙伴组织的 IdP
接下来,你的合作伙伴组织需要在其 IdP 中配置所需的声明和信赖方信任关系。 为了使联合身份验证正常运行,Microsoft Entra 外部 ID 要求外部 IdP 发送需要在外部 IdP 上配置的某些属性和声明。
注意
为了说明如何为联合身份验证配置 SAML/WS-Fed IdP,我们使用 Active Directory 联合身份验证服务 (AD FS) 作为示例。 请参阅文章使用 AD FS 配置 SAML/WS-Fed IdP 联合,其中提供了有关如何将 AD FS 配置为 SAML 2.0 或 WS-Fed IdP 以准备联合的示例。
配置 SAML 2.0 标识提供者
Microsoft Entra 外部 ID要求来自外部 IdP 的 SAML 2.0 响应包含特定属性和声明。 可以通过以下任一方法在外部 IdP 上配置必要的属性和声明:
- 链接到联机安全令牌服务 XML 文件,或
- 手动输入值
有关所需值,请参阅下表。
注意
请确保该值与您要为其设置外部联合的云匹配。
表 1. 来自 IdP 的 SAML 2.0 响应的必需属性。
| 特征 | 员工租户的值 |
|---|---|
| AssertionConsumerService | https://login.partner.microsoftonline.cn/login.srf |
| 受众 |
https://login.partner.microsoftonline.cn/<tenant ID>/ (建议) 用您要与之设置联合的 Microsoft Entra 租户的租户 ID 替换 <tenant ID>。在Microsoft Entra ID为外部联合身份验证发送的 SAML 请求中,颁发者 URL 是租户终结点(例如, https://login.partner.microsoftonline.cn/<tenant ID>/)。 对于任何新的联合体,我们建议所有合作伙伴将基于 SAML 或 WS-Fed 的 IdP 的受众设置为租户终结点。 使用全局终结点配置的任何现有联合(例如,urn:federation:partner.microsoftonline.cn)将继续工作,但如果您的外部 IdP 期望在 Microsoft Entra ID 发送的 SAML 请求中包含全球颁发者 URL,则新的联合可能会停止工作。 |
| 颁发者 | 合作伙伴 IdP 的颁发者 URI,例如 http://www.example.com/exk10l6w90DHM0yi... |
表 2. IdP 颁发的 SAML 2.0 令牌的必需声明。
| 属性名称 | 值 |
|---|---|
| NameID 格式 | urn:oasis:names:tc:SAML:2.0:nameid-format:persistent |
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress |
用户的电子邮件地址 |
配置 WS-Fed 标识提供者
Microsoft Entra 外部 ID 要求外部 IdP 发出的 WS-Fed 消息中包含特定的属性和声明。 可以通过以下任一方法在外部 IdP 上配置必要的属性和声明:
- 链接到联机安全令牌服务 XML 文件,或
- 手动输入值
注意
目前,已测试与Microsoft Entra ID兼容性的两个 WS-Fed 提供程序是 AD FS 和 Shibboleth。
WS-Fed 的必需属性和声明
下表显示了必须在第三方 WS-Fed IdP 中配置的特定属性和声明的要求。 若要建立联合,必须从 IdP 的 WS-Fed 消息中接收以下属性。 可以通过链接到联机安全令牌服务 XML 文件或手动输入来配置这些属性。
有关所需值,请参阅下表。
注意
请确保该值与您要为其设置外部联合的云匹配。
表 3. 来自 IdP 的 WS-Fed 消息中的必需属性。
| 特征 | 员工租户的值 |
|---|---|
| PassiveRequestorEndpoint(被动请求者端点) | https://login.partner.microsoftonline.cn/login.srf |
| 受众 |
https://login.partner.microsoftonline.cn/<tenant ID>/ (建议)将 <tenant ID> 替换为要设置联合的 Microsoft Entra 租户的租户 ID。在Microsoft Entra ID为外部联合身份验证发送的 SAML 请求中,颁发者 URL 是租用的终结点(例如, https://login.partner.microsoftonline.cn/<tenant ID>/)。 对于任何新的联合体,我们建议所有合作伙伴将基于 SAML 或 WS-Fed 的 IdP 的受众设置为租户终结点。 现有配置了全局终结点(例如,urn:federation:partner.microsoftonline.cn)的联合身份验证将继续有效,但如果外部 IdP 期望在 Microsoft Entra ID 发送的 SAML 请求中看到全局颁发者 URL,则新的联合身份验证将无法正常运作。 |
| 颁发者 | 合作伙伴 IdP 的颁发者 URI,例如 http://www.example.com/exk10l6w90DHM0yi... |
表 4. IdP 颁发的 WS-Fed 令牌的必需声明。
| 特征 | 值 |
|---|---|
| 不可变ID | http://schemas.microsoft.com/LiveID/Federation/2008/05/ImmutableID |
| 电子邮件地址 | http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress |
步骤 3:在 Microsoft Entra 外部 ID 中配置 SAML/WS-Fed IdP 联合身份验证
接下来,在 Microsoft Entra 外部 ID 的步骤 1 中配置 IdP 的联合身份验证。 可以使用 Microsoft Entra 管理中心 或 Microsoft 图形 API。 联合策略生效之前可能需要 5-10 分钟。 在此期间,不要尝试兑换联合域的邀请。 需要以下属性:
- 合作伙伴的 IdP 颁发者 URI
- 合作伙伴 IdP 的被动身份验证端点(仅支持 https)
- 证书
将 IdP 添加到 Microsoft Entra 管理中心的租户中
以至少 外部身份提供者管理员 身份登录到 Microsoft Entra 管理中心。
如果有权访问多个租户,请使用顶部菜单中的 “设置” 图标
从 “目录” 菜单切换到租户。导航到 Entra ID>外部身份>所有身份提供者。
选择“自定义”选项卡,然后选择新增>SAML/WS-Fed。
在“新建 SAML/WS-Fed IdP”页上,输入以下内容:
- 显示名称 - 输入一个名称来帮助标识合作伙伴的 IdP。
- 标识提供者协议 - 选择 SAML 或 WS-Fed。
- 联合 IdP 的域名 - 输入合作伙伴的 IdP 目标域名以进行联合。 在此初始配置期间,只需输入一个域名。 以后你可以添加更多域。
选择用于填充元数据的方法。 如果您有一个包含元数据的文件,可以选择“解析元数据文件”并浏览该文件,以自动填充字段。 或者,可以选择“手动输入元数据”并输入以下信息:
- 合作伙伴的 SAML IdP 的颁发者 URI,或合作伙伴的 WS-Fed IdP 的实体 ID。
- 合作伙伴 SAML IdP 的被动身份验证终结点,或合作伙伴 WS-Fed IdP 的被动请求者终结点。
- 证书 - 签名证书 ID。
- 元数据 URL - IdP 元数据的位置,用于自动续签签名证书。
注意
元数据 URL 是可选的。 但是,我们强烈建议使用它。 如果提供元数据 URL,Microsoft Entra ID可以在签名证书过期时自动续订。 如果在过期时间之前出于任何原因旋转证书,或者如果您未提供元数据 URL,Microsoft Entra ID 将无法续订证书。 在这种情况下,你需要手动更新签名证书。
选择“保存”。 标识提供者已添加到“SAML/WS-Fed 标识提供者”列表中。
(可选)若要将更多域名添加到此联合标识提供者,请执行以下操作:
使用 Microsoft 图形 API 配置联合身份验证
可以使用 Microsoft 图形 API samlOrWsFedExternalDomainFederation 资源类型来设置与支持 SAML 或 WS-Fed 协议的标识提供者的联合。
步骤 4:配置兑换顺序(员工租户中的 B2B 协作)
如果要在员工租户中配置联合,以便与经过验证的域进行 B2B 协作,请确保在邀请兑换期间首先使用联合 IdP。 在跨租户访问设置中为入站 B2B 协作配置兑换订单设置。 将 SAML/WS-Fed 标识提供者移动到“主要标识提供者”列表的顶部,以优先使用联合 IdP 兑换。
可以通过邀请新的 B2B 来宾用户来测试您的联盟设置。 有关详细信息,请参阅 在 Microsoft Entra 管理中心中添加 B2B 协作用户。
注意
可以使用 Microsoft Graph REST API(beta 版本)配置邀请兑换订单。 请参阅Example 2:更新Microsoft Graph参考文档中的默认邀请兑换配置。
如何更新证书或配置详细信息
在“ 所有标识提供者 ”页上,可以查看配置的 SAML/WS-Fed 标识提供者及其证书到期日期的列表。 在这个列表中,您可以更新证书并修改其他配置详细信息。
以至少外部身份提供者管理员身份登录到Microsoft Entra 管理中心。
浏览至 Entra ID>外部身份>所有身份提供者。
选择自定义选项卡。
通过列表滚动找到身份提供商或使用搜索框。
若要更新证书或修改配置详细信息:
- 在标识提供者的“配置”列中,选择“编辑”链接。
- 在配置页上,修改以下任何详细信息:
- 显示名称 - 合作伙伴组织的显示名称。
- 标识提供者协议 - 选择 SAML 或 WS-Fed。
- 被动身份验证终结点 - 合作伙伴 IdP 的被动请求方终结点。
- 证书 - 签名证书 ID。 若要续签,请输入新的证书 ID。
- 元数据 URL - 包含合作伙伴元数据的 URL,用于自动续签签名证书。
- 选择“保存”。
若要编辑与合作伙伴关联的域,请选择“域”列中的链接。 在域详细信息窗格中:
- 若要添加域,请在“联合 IdP 的域名”旁边键入域名,然后选择“添加”。 针对你要添加的每个域重复上述操作。
- 若要删除某个域,请选择该域旁边的删除图标。
- 完成后,选择“完成”。
如何删除联合
可以删除联合配置。 如果这样做,已兑换其邀请的联合来宾用户无法再登录。 但是,可以通过 重置资源的兑换状态,让他们再次访问资源。 若要删除Microsoft Entra 管理中心中 IdP 的配置,请执行以下操作:
以至少外部身份提供商管理员的身份登录到Microsoft Entra 管理中心。
浏览到 Entra ID>外部身份>所有身份提供者。
选择自定义选项卡,然后在列表中滚动到标识提供者,或者使用搜索框。
选择“域”列中的链接以查看 IdP 的域详细信息。
删除域名列表中的所有域,只保留一个。
选择“删除配置”,然后选择“完成”。
选择“确定”以确认删除。
还可以使用 Microsoft 图形 API samlOrWsFedExternalDomainFederation 资源类型移除联合域。
后续步骤
- 员工租户:详细了解外部用户使用各种标识提供者登录时的邀请兑换体验。