通过

将多个Microsoft Entra ID实例与 AD FS 的单个实例联合

单个高可用性 AD FS 场可以联合多个林,前提是它们之间存在双向信任关系。 这些多个林可能与同一Microsoft Entra ID不对应。 本文介绍如何在单个 AD FS 部署和多个Microsoft Entra ID实例之间配置联合身份验证。

通过单个 AD FS 进行多租户联合身份验证

注意

本场景不支持设备写回和自动设备联接。

注意

Microsoft Entra Connect 不能用于在此方案中配置联合身份验证,因为 Microsoft Entra Connect 可以为单个Microsoft Entra ID中的域配置联合身份验证。

将 AD FS 与多个Microsoft Entra ID 联合的步骤

假设域 contoso.com 在 Microsoft Entra 中,而 contoso.partner.onmschina.cn 已与 contoso.com 内部 Active Directory 环境中安装的本地 AD FS 联合。 Fabrikam.com 是 fabrikam.partner.onmschina.cn Microsoft Entra ID 中的一个域。

步骤 1:建立双向信任

若要让 contoso.com 中的 AD FS 能够对 fabrikam.com 中的用户进行身份验证,需在 contoso.com 和 fabrikam.com 之间建立双向信任。 请按照此文中的准则创建双向信任。

步骤 2:修改 contoso.com 联合身份验证设置

为联合到 AD FS 的单个域设置的默认颁发者为“http://ADFSServiceFQDN/adfs/services/trust"”,例如 http://fs.contoso.com/adfs/services/trust。 Microsoft Entra ID需要每个联合域的唯一颁发者。 由于 AD FS 将联合两个域,因此需要修改颁发者的值,使其唯一。

在 AD FS 服务器上,打开 Microsoft Graph PowerShell 并执行以下步骤:

连接到包含域 contoso.com 的 Microsoft Entra ID。

Connect-MgGraph -Environment China -ClientId 'YOUR_CLIENT_ID' -TenantId 'YOUR_TENANT_ID' -Scope 'Domain.ReadWrite.All'

更新 contoso.com 的联盟设置:

 $domainId  = "contoso.com"
 $newIssuer = "http://contoso.com/adfs/services/trust"

 $fed = Get-MgDomainFederationConfiguration -DomainId $domainId

 
 Update-MgDomainFederationConfiguration `
   -DomainId $domainId `
   -InternalDomainFederationId $fed.Id `
   -IssuerUri $newIssuer

域联合设置中的颁发者更改为 http://contoso.com/adfs/services/trust,并为 Microsoft Entra ID Relying Party Trust 添加了一条颁发声明规则,以根据 UPN 后缀颁发正确的 issuerId 值。

步骤 3:通过 AD FS 联合 fabrikam.com

在 Microsoft Graph PowerShell 会话中,执行以下步骤:连接到包含域 fabrikam.com 的 Microsoft Entra ID。

Connect-MgGraph -Environment China -ClientId 'YOUR_CLIENT_ID' -TenantId 'YOUR_TENANT_ID' -Scope 'Domain.ReadWrite.All'

将 fabrikam.com 托管的域转换为联合域:

 # Create the federation configuration
 
 $params = @{
 	"@odata.type" = "#microsoft.graph.internalDomainFederation"
 	displayName = "fabrikam.com"
 	issuerUri = $issuerUri
 	signingCertificate = $signingCertificate
 	passiveSignInUri = $passiveSignInUri
 	preferredAuthenticationProtocol = $preferredAuthenticationProtocol
 	activeSignInUri = $activeSignInUri
 	signOutUri = $signOutUri
 }

 New-MgDomainFederationConfiguration -DomainId $domainId -BodyParameter $params

 # Switch the domain authentication type to Federated
 Update-MgDomain -DomainId $domainId -AuthenticationType "Federated"

上述操作会将域 fabrikam.com 与同一 AD FS 联合。 您可以使用 Get-MsolDomainFederationSettings 来验证两个域的域设置。

后续步骤

将 Active Directory 与 Microsoft Entra ID 连接