配置跨租户同步

本文介绍使用 Microsoft Entra 管理中心配置跨租户同步的步骤。 配置后,Microsoft Entra ID 会自动预配和取消预配目标租户中的 B2B 用户。 有关此服务的功能、工作原理以及常见问题的重要详细信息,请参阅使用 Microsoft Entra ID 自动将用户预配到 SaaS 应用程序和取消预配

Diagram that shows cross-tenant synchronization between source tenant and target tenant.

学习目标

学完本文后,你将能够:

  • 在目标租户中创建 B2B 用户
  • 在目标租户中删除 B2B 用户
  • 使用户特性在源租户和目标租户之间保持同步

先决条件

Icon for the source tenant.
源租户

Icon for the target tenant.
目标租户

  • Microsoft Entra ID P1 或 P2 许可证。 有关详细信息,请参阅许可证要求
  • 用于配置跨租户访问设置的安全管理员角色。

步骤 1:规划预配部署

  1. 定义构造组织中的租户的方式。

  2. 了解预配服务的工作原理

  3. 确定谁在预配范围中。

  4. 确定要在租户之间映射的数据。

步骤 2:在目标租户中启用用户同步

提示

本文中的步骤可能因开始使用的门户而略有不同。

Icon for the target tenant.
目标租户

  1. 登录到目标租户的 Microsoft Entra 管理中心

  2. 浏览到“标识>外部标识>跨租户访问设置”。

  3. 在“组织设置”选项卡上,选择“添加组织”。

  4. 通过键入租户 ID 或域名并选择“添加”来添加源租户。

    Screenshot that shows the Add organization pane to add the source tenant.

  5. 在已添加组织的“入站访问”下,选择“继承自默认项”。

  6. 选择“跨租户同步”选项卡。

  7. 选中“允许用户同步到此租户”复选框。

    Screenshot that shows the Cross-tenant sync tab with the Allow users sync into this tenant check box.

  8. 选择“保存”。

  9. 如果看到“启用跨租户同步和自动兑换”对话框询问你是否要启用自动兑换,请选择“是”

    选择“是”会在目标租户中自动兑换邀请。

    Screenshot that shows the Enable cross-tenant sync and auto-redemption dialog box to automatically redeem invitations in the target tenant.

步骤 3:在目标租户中自动兑换邀请

Icon for the target tenant.
目标租户

在此步骤中,你自动兑换邀请,使源租户中的用户不必接受同意提示。 必须同时在源租户(出站)和目标租户(入站)中选中此设置。 有关详细信息,请参阅自动兑换设置

  1. 在目标租户中的同一“入站访问设置”页上,选择“信任设置”选项卡。

  2. 选中“自动兑换租户 <租户> 邀请”复选框。

    如果之前在“启用跨租户同步和自动兑换”对话框中选择了“是”,则可能已选中此框。

    Screenshot that shows the inbound Automatic redemption check box.

  3. 选择“保存”。

步骤 4:在源租户中自动兑换邀请

Icon for the source tenant.
源租户

在此步骤中,你自动在源租户中兑换邀请。

  1. 登录到源租户的 Microsoft Entra 管理中心

  2. 浏览到“标识>外部标识>跨租户访问设置”。

  3. 在“组织设置”选项卡上,选择“添加组织”。

  4. 通过键入租户 ID 或域名并选择“添加”来添加目标租户。

    Screenshot that shows the Add organization pane to add the target tenant.

  5. 在目标组织的“出站访问”下,选择“继承自默认项”。

  6. 选择“信任设置”选项卡。

  7. 选中“自动兑换租户 <租户> 邀请”复选框。

    Screenshot that shows the outbound Automatic redemption check box.

  8. 选择“保存”。

步骤 5:在源租户中创建配置

Icon for the source tenant.
源租户

  1. 在源租户中,浏览到“标识>外部标识>跨租户同步”。

  2. 选择“配置”。

  3. 在页面顶部,选择“新建配置”。

  4. 为配置提供一个名称,然后选择“创建”。

    刚创建的配置最长可能需要 15 秒才能显示在列表中。

步骤 6:测试与目标租户的连接

Icon for the source tenant.
源租户

  1. 在源租户中,应该会看到新的配置。 否则,请在配置列表中选择你的配置。

    Screenshot that shows the Cross-tenant synchronization Configurations page and a new configuration.

  2. 选择“开始”。

  3. 将“预配模式”设置为“自动”。

  4. 在“管理员凭据”部分下,将“身份验证方法”更改为“跨租户同步策略”。

    Screenshot that shows the Provisioning page with the Cross Tenant Synchronization Policy selected.

  5. 在“租户 ID”框中,输入目标租户的租户 ID。

  6. 选择“测试连接”以测试连接。

    应会看到一条消息,指出提供的凭据已被授权启用预配。 如果测试连接失败,请参阅本文后面的故障排除提示

    Screenshot that shows a testing connection notification.

  7. 选择“保存”。

    “映射”和“设置”部分随即显示。

  8. 关闭“预配”页面。

步骤 7:定义谁在预配范围中

Icon for the source tenant.
源租户

借助 Microsoft Entra 预配服务,可通过以下一种或两种方式定义将预配的人员:

  • 基于对配置的分配
  • 基于用户的特性

先小部分测试。 在向所有用户推出之前,请先在少量用户中进行测试。 如果预配范围设置为分配的用户和组,可以通过将一两个用户分配到配置来控制它。 如下一步中所述,可以通过创建基于特性的范围筛选器来进一步细化属于预配范围的人员。

  1. 在源租户中选择“预配”,然后展开“设置”部分。

    Screenshot of the Provisioning page that shows the Settings section with the Scope and Provisioning Status options.

  2. 在“范围”列表中,选择是同步源租户中的所有用户,还是仅同步分配到配置的用户。

    建议选择“仅同步已分配的用户和组”,而不是“同步所有用户和组”。 减少范围内的用户数可以提高性能。

  3. 如果进行了任何更改,请选择“保存”。

  4. 在“配置”页面上,选择“用户和组”。

    若要使跨租户同步工作,必须向配置分配至少一个内部用户。

  5. 选择“添加用户/组”。

  6. 在“添加分配”页面中,选择“用户和组”下的“未选择任何内容”。

  7. 在“用户和组”窗格中,搜索并选择要向配置分配的一个或多个内部用户或组。

    如果你选择了一个要向配置分配的组,则只有属于该组中直接成员的用户才会在预配范围内。 可以选择静态组或动态组。 该分配不会级联到嵌套组。

  8. 选择“选择” 。

  9. 选择“分配”。

    Screenshot that shows the Users and groups page with a user assigned to the configuration.

    有关详细信息,请参阅向应用程序分配用户和组

步骤 8:(可选)使用范围筛选器定义属于预配范围的人员

Icon for the source tenant.
源租户

无论在上一步中对“范围”选择的值如何,你都可以通过创建基于特性的范围筛选器来进一步限制同步的用户。

  1. 在源租户中选择“预配”,然后展开“映射”部分。

    Screenshot that shows the Provisioning page with the Mappings section expanded.

  2. 选择“预配 Microsoft Entra ID 用户”以打开“属性映射”页面。

  3. 在“源对象范围”下,选择“所有记录”。

    Screenshot that shows the Attribute Mapping page with the Source Object Scope.

  4. 在“源对象范围”页面上,选择“添加范围筛选器”。

  5. 添加任何范围筛选器,定义哪些用户属于预配范围内。

    若要配置范围筛选器,请参阅使用范围筛选器确定要预配的用户或组的范围中提供的说明。

    Screenshot that shows the Add Scoping Filter page with sample filter.

  6. 依次选择“确定”和“保存”,保存所做的全部更改。

    如果添加了一个筛选器,你将看到一条消息,指出保存更改将导致重新同步所有已分配的用户和组。 这可能需要很长的时间,具体取决于目录的大小。

  7. 选择“是”并关闭“特性映射”页面。

步骤 9:查看特性映射

Icon for the source tenant.
源租户

通过特性映射,可以定义数据在源租户和目标租户之间的流动方式。 有关如何自定义默认特性映射的信息,请参阅教程 - 在 Microsoft Entra ID 中为 SaaS 应用程序自定义用户预配特性映射

  1. 在源租户中选择“预配”,然后展开“映射”部分。

  2. 选择“预配 Microsoft Entra ID 用户”。

  3. 在“特性映射”页面上,在“特性映射”部分向下滚动以查看租户之间同步的用户特性。

    第一个属性 alternativeSecurityIdentifier 是一个内部属性,用于跨租户唯一标识用户、将源租户中的用户与目标租户中的现有用户匹配,并确保每个用户只有一个帐户。 无法更改匹配的属性。 尝试更改匹配属性或添加其他匹配属性将导致 schemaInvalid 错误。

    Screenshot of the Attribute Mapping page that shows the list of Microsoft Entra attributes.

  4. 选择“成员(userType)”属性以打开“编辑属性”页面。

  5. 查看“userType”特性的“常量值”设置。

    此设置定义将在目标租户中创建的用户类型,可以是下表中的值之一。 默认情况下,用户将创建为外部成员(B2B 协作用户)。 有关详细信息,请参阅 Microsoft Entra B2B 协作用户的属性

    常量值 说明
    成员 默认。 用户将创建为目标租户中的外部成员(B2B 协作用户)。 用户将能够充当目标租户的任何内部成员。
    来宾 用户将创建为目标租户中的外部来宾(B2B 协作用户)。

    注意

    如果目标租户中已存在 B2B 用户,则“成员(userType)”不会更改为“成员”,除非将“应用此映射”设置设为“始终”

    所选用户类型具有以下应用或服务限制(但不限于):

    应用或服务 限制
    Power BI - Power BI 中对 UserType 成员的支持目前为预览版。 有关详细信息,请参阅使用 Microsoft Entra B2B 将 Power BI 内容分发给外部来宾用户
    Azure 虚拟桌面 - Azure 虚拟桌面不支持外部成员和外部来宾。

    Screenshot of the Edit Attribute page that shows the Member attribute.

  6. 如果要定义任何转换,在“特性映射”页面上选择要转换的特性,例如“displayName”。

  7. 将“映射类型”设置为“表达式”。

  8. 在“表达式”框中,输入转换表达式。 例如,对于显示名称,可以执行以下操作:

    • 颠倒名字和姓氏,并在中间加一个逗号。
    • 在显示名称末尾添加一个括在括号中的域名。

    例如,请参阅有关在 Microsoft Entra ID 中编写特性映射表达式的参考

    Screenshot of the Edit Attribute page that shows the displayName attribute with the Expression box.

提示

可以通过更新跨租户同步的架构来映射目录扩展。 有关详细信息,请参阅在跨租户同步中映射目录扩展

步骤 10:指定其他预配设置

Icon for the source tenant.
源租户

  1. 在源租户中选择“预配”,然后展开“设置”部分。

    Screenshot of the Provisioning page that shows the Settings section with the Scope and Provisioning Status options.

  2. 选中“发生故障时发送电子邮件通知”复选框。

  3. 在“通知电子邮件”框中输入应接收预配错误通知的人员或组的电子邮件地址。

    电子邮件通知在作业进入隔离状态的 24 小时内发送。 有关自定义警报,请参阅了解预配与 Azure Monitor 日志的集成方式

  4. 若要防止意外删除,请选择“防止意外删除”并指定阈值。 默认情况下,阈值设置为 500。

    有关详细信息,请参阅在 Microsoft Entra 预配服务中启用意外删除防护

  5. 选择“保存” 以保存所有更改。

步骤 11:测试按需预配

Icon for the source tenant.
源租户

完成配置后,可以使用其中一个用户测试按需预配。

  1. 在源租户中,浏览到“标识>外部标识>跨租户同步”。

  2. 选择“配置”,然后选择你的配置。

  3. 选择“按需预配”。

  4. 在“选择用户或组”框中,搜索并选择一个测试用户。

    Screenshot of the Provision on demand page that shows a test user selected.

  5. 选择“预配”。

    片刻后,将显示“执行操作”页面,其中包含有关在目标租户中预配测试用户的信息。

    Screenshot of the Perform action page that shows the test user and list of modified attributes.

    如果用户不在范围内,你将看到一个页面,其中包含有关跳过测试用户的原因的信息。

    Screenshot of the Determine if user is in scope page that shows information about why test user was skipped.

    在“按需预配”页面上,可以查看有关预配的详细信息,并可以选择“重试”。

    Screenshot of the Provision on demand page that shows details about the provision.

  6. 在目标租户中,验证已预配测试用户。

    Screenshot of the Users page of the target tenant that shows the test user provisioned.

  7. 如果一切按预期工作,请将其他用户分配到配置。

    有关详细信息,请参阅 Microsoft Entra ID 中的按需预配

步骤 12:启动预配作业

Icon for the source tenant.
源租户

预配作业对“设置”部分的“范围”中定义的所有用户启动初始同步周期。 初始周期执行的时间比后续周期长,只要 Microsoft Entra 预配服务正在运行,后续周期大约每 40 分钟就会进行一次。

  1. 在源租户中,浏览到“标识>外部标识>跨租户同步”。

  2. 选择“配置”,然后选择你的配置。

  3. 在“概述”页面上,查看预配详细信息。

    Screenshot of the Configurations Overview page that lists provisioning details.

  4. 选择“开始预配”以启动预配作业。

步骤 13:监视预配

Icon for the source tenant.Icon for the target tenant.
源租户和目标租户

启动预配作业后,可以监视其状态。

  1. 在源租户的“概述”页面上,检查进度栏来查看预配周期的状态以及完成进度。 有关详细信息,请参阅检查用户预配状态

    如果预配疑似处于非正常状态,配置将进入隔离状态。 有关详细信息,请参阅隔离状态本地的应用程序预配

    Screenshot of the Configurations Overview page that shows the status of the provisioning cycle.

  2. 选择“预配日志”来确定预配成功或预配失败的用户。 默认情况下,日志按配置的服务主体 ID 进行筛选。 有关详细信息,请参阅 Microsoft Entra ID 中的预配日志

    Screenshot of the Provisioning logs page that lists the log entries and their status.

  3. 选择“审核日志”,查看 Microsoft Entra ID 中记录的所有事件。 有关详细信息,请参阅 Microsoft Entra ID 中的审核日志

    Screenshot of the Audit logs page that lists the log entries and their status.

    还可以查看目标租户中的审核日志。

  4. 在目标租户中,选择“用户”>“审核日志”,查看记录的事件进行用户管理。

    Screenshot of the Audit logs page in the target tenant that lists the log entries for user management.

步骤 14:配置离开设置

Icon for the target tenant.
目标租户

即使用户是在目标租户中预配的,他们仍然能够删除自己。 如果用户删除了自己,并且他们处于范围内,则会在下一个预配周期中再次预配这些用户。 如果要使用户无法从你的组织中删除自己,则必须配置“外部用户离开设置”。

  1. 在目标租户中,浏览到“标识”>“外部标识”>“外部协作设置”。

  2. 在“外部用户离开设置”下,选择是否允许外部用户自行离开组织。

此设置也适用于 B2B 协作和 B2B 直连,因此,如果你将“外部用户离开设置”设置为“否”,B2B 协作用户和 B2B 直连用户将无法自行离开组织。 有关详细信息,请参阅以外部用户身份离开组织

故障排除提示

删除配置

按照以下步骤在“配置”页上删除配置。

  1. 在源租户中,浏览到“标识>外部标识>跨租户同步”。

  2. 在“配置”页上,在要删除的配置旁边添加勾选标记。

  3. 选择“删除”,然后选择“确定”以删除配置。

    Screenshot of the Configurations page showing how to delete a configuration.

症状 - 测试连接失败并出现 AzureDirectoryB2BManagementPolicyCheckFailure

在源租户中配置跨租户同步并测试连接时,连接失败并出现以下错误消息:

You appear to have entered invalid credentials. Please confirm you are using the correct information for an administrative account.
Error code: AzureDirectoryB2BManagementPolicyCheckFailure
Details: Policy permitting auto-redemption of invitations not configured.

Screenshot that shows the error when test connection fails with AzureDirectoryB2BManagementPolicyCheckFailure.

原因

此错误表示未设置在源租户和目标租户中自动兑换邀请的策略。

解决方案

按照步骤 3:在目标租户中自动兑换邀请步骤 4:在源租户中自动兑换邀请中的步骤操作。

症状 -“自动兑换”复选框处于禁用状态

配置跨租户同步时,“自动兑换”复选框处于禁用状态。

Screenshot that shows the Automatic redemption check box as disabled.

原因

你的租户没有 Microsoft Entra ID P1 或 P2 许可证。

解决方案

必须具有 Microsoft Entra ID P1 或 P2 才能配置信任设置。

症状 - 目标租户中最近删除的用户未还原

在目标租户中软删除一个同步的用户后,下一个同步周期中未还原该用户。 如果你尝试使用按需预配来软删除某用户,再还原该用户,这可能会导致用户重复。

原因

不支持在目标租户中还原以前软删除的用户。

解决方案

在目标租户中手动还原软删除的用户。 有关详细信息,请参阅使用 Microsoft Entra ID 还原或删除最近删除的用户

症状 - 由于用户启用了短信登录,因此跳过用户

从同步中跳过用户。 范围步骤包括以下状态为 false 的筛选器:“筛选外部用户.alternativeSecurityIds EQUALS 'None'”

原因

如果为用户启用了短信登录,则预配服务会跳过这些用户。

解决方案

为用户禁用短信登录。 以下脚本演示如何使用 PowerShell 禁用短信登录。

##### Disable SMS Sign-in options for the users

#### Import module
Install-Module Microsoft.Graph.Users.Actions
Install-Module Microsoft.Graph.Identity.SignIns
Import-Module Microsoft.Graph.Users.Actions

Connect-MgGraph -Scopes "User.Read.All", "Group.ReadWrite.All", "UserAuthenticationMethod.Read.All","UserAuthenticationMethod.ReadWrite","UserAuthenticationMethod.ReadWrite.All"

##### The value for phoneAuthenticationMethodId is 3179e48a-750b-4051-897c-87b9720928f7

$phoneAuthenticationMethodId = "3179e48a-750b-4051-897c-87b9720928f7"

#### Get the User Details

$userId = "objectid_of_the_user_in_Azure_AD"

#### validate the value for SmsSignInState

$smssignin = Get-MgUserAuthenticationPhoneMethod -UserId $userId

{
    if($smssignin.SmsSignInState -eq "ready"){   
      #### Disable Sms Sign-In for the user is set to ready
       
      Disable-MgUserAuthenticationPhoneMethodSmsSignIn -UserId $userId -PhoneAuthenticationMethodId $phoneAuthenticationMethodId
      Write-Host "SMS sign-in disabled for the user" -ForegroundColor Green
    }
    else{
    Write-Host "SMS sign-in status not set or found for the user " -ForegroundColor Yellow
    }

}

##### End the script

症状 - 用户无法预配,并出现错误“AzureActiveDirectoryForbidden”

范围内的用户无法预配。 预配日志详细信息包括以下错误消息:

Guest invitations not allowed for your company. Contact your company administrator for more details.

原因

此错误指示目标租户中的来宾邀请设置配置了限制最多的设置:“组织中的任何人都不能邀请包括管理员在内的来宾用户(限制最严格)”。

解决方案

将目标租户中的来宾邀请设置更改为限制较少的设置。 有关详细信息,请参阅配置外部协作设置

后续步骤