Compartir a través de

适用于外部 ID 的身份验证和条件访问

提示

本文适用于工作人员租户中的 B2B 协作。

当外部用户访问组织中的资源时,身份验证流由例如 B2B 协作、用户标识提供者(例如外部 Microsoft Entra 租户或社交标识提供者)、条件访问策略,以及在用户的母租户和托管资源的租户中配置的跨租户访问设置决定。

本文介绍适用于访问组织中资源的外部用户的身份验证流。 组织可以针对其外部用户强制实施多个条件访问策略,此类策略可在租户、应用或单个用户级别强制实施,其方式与为全职员工和组织成员启用策略的方式相同。

外部Microsoft Entra用户的身份验证流

下图演示了当Microsoft Entra组织与其他Microsoft Entra组织中的用户共享资源时,身份验证流。 此图显示了跨租户访问设置如何与条件访问策略(如多重身份验证)协同工作,确定用户能否访问资源。 此流适用于 B2B 协作,步骤 6 中所述的情况除外。

显示跨租户身份验证过程的图表。

步骤 说明
1 来自 Fabrikam(用户的主租户)的一位用户开始登录到 Contoso(资源租户)中的资源。
2 登录期间,Microsoft Entra安全令牌服务(STS)评估 Contoso 的条件访问策略。 它还可通过评估跨租户访问设置(Fabrikam 的出站设置和 Contoso 的入站设置)来检查是否允许 Fabrikam 用户进行访问。
3 Microsoft Entra ID检查 Contoso 的入站信任设置,以查看 Contoso 是否信任来自 Fabrikam 的 MFA 和设备声明(设备符合性、Microsoft Entra 混合加入状态)。 如果不是,跳到步骤 6。
4 如果 Contoso 信任来自 Fabrikam 的 MFA 和设备声明,则 Microsoft Entra ID 会检查用户的身份验证会话,以确认用户是否已完成 MFA。 如果 Contoso 信任 Fabrikam 的设备信息,Microsoft Entra ID 在身份验证会话中查找声明,以指示设备状态(合规或 Microsoft Entra 混合加入)。
5 如果需要进行多重身份验证但未完成,或者未提供设备声明信息,Microsoft Entra ID 会在用户的家用租户中根据需要发出多重身份验证和设备质询。 在 Fabrikam 中满足 MFA 和设备要求时,用户可以访问 Contoso 中的资源。 如果检查未通过,则阻止访问。
6 未配置信任设置且需要 MFA 时,系统会提示 B2B 协作用户进行 MFA。 他们需要在资源租户中通过多因素认证 (MFA)。 如果必须满足设备合规性,但无法对其进行评估,则会阻止 B2B 协作用户的访问。

有关详细信息,请参阅外部用户的条件访问部分。

非Microsoft Entra ID外部用户的身份验证流

当Microsoft Entra组织与除Microsoft Entra ID以外的标识提供者与外部用户共享资源时,身份验证流取决于用户是否使用标识提供者进行身份验证。 在任何一种情况下,资源租户都会确定要使用的身份验证方法,然后将用户重定向到其标识提供者或提供一次性密码。

示例 1:非Microsoft Entra ID外部用户的身份验证流和令牌

下图展示了当外部用户使用来自非 Microsoft Entra ID 身份提供者(如联合 SAML/WS-Fed 身份提供者)的帐户登录时的身份验证流程。

显示来自外部目录的 B2B 来宾用户的身份验证流的示意图。

步骤 说明
1 B2B 来宾用户请求访问资源。 资源将用户重定向到其资源租户,即受信任的 IdP。
2 资源租户将用户标识为外部用户,并将用户重定向到 B2B 来宾用户的 IdP。 用户在 IdP 中执行主要身份验证。
3 在 B2B 来宾用户的 IdP 中进行授权策略的评估。 如果用户满足这些策略,则 B2B 来宾用户的 IdP 会向用户颁发令牌。 用户被重定向回具有令牌的资源租户。 资源租户会验证令牌,然后根据其条件访问策略评估用户。 例如,资源租户可能要求用户执行Microsoft Entra多重身份验证。
4 入站跨租户访问设置和条件访问策略将被评估。 满足所有策略后,资源租户会颁发专属令牌,并将用户重定向到其资源。

适用于外部用户的条件访问

组织可以针对外部 B2B 协作用户强制实施条件访问策略,其方式与为组织的全职员工和成员启用策略的方式相同。 通过引入跨租户访问设置,还可以信任来自外部Microsoft Entra组织的 MFA 和设备声明。 本节介绍将条件访问应用于组织外部用户时的重要注意事项。

注意

跨租户信任不支持带有条件访问的自定义控件。

将条件访问策略分配给外部用户类型

配置条件访问策略时,可以精细控制要应用策略的外部用户的类型。 外部用户根据身份验证方式(内部或外部)以及他们与组织的关系(来宾或成员)进行分类。

  • B2B 协作来宾用户 - 通常被视为来宾的多数用户都属于此类别。 此 B2B 协作用户在外部 Microsoft Entra 组织或外部身份提供者(如社交身份)中有一个帐户,并且在您的组织中具有来宾权限。 在 Microsoft Entra 目录中创建的用户对象的用户类型是来宾。 此类别包括受邀的 B2B 协作用户。
  • B2B 协作成员用户 - 此 B2B 协作用户在外部 Microsoft Entra 组织或外部身份提供者(例如社交身份)中拥有一个账户,并在您的组织中具有成员级访问资源的权限。 这种情况在由多个租户组成的组织中很常见,其中用户被视为较大组织的一部分,并且需要成员级访问权限来访问组织的其他租户中的资源。 在 Microsoft Entra 资源目录中创建的用户对象具有 UserType 为 Member。
  • 本地来宾用户 - 本地来宾用户具有在目录中管理的凭据。 在 Microsoft Entra B2B 协作推出之前,通常通过为分销商、供应商、承包商和其他合作人员设置内部凭据,并将用户对象的 UserType 属性设为 Guest,以指定他们为来宾,共同协作。
  • 服务提供程序用户 - 充当组织的云服务提供商的组织(Microsoft Graph partner 特定配置中的 isServiceProvider 属性为 true)。
  • 其他外部用户 - 适用于不属于这些类别但未被视为组织内部成员的任何用户,这意味着他们不会通过Microsoft Entra ID在内部进行身份验证,并且资源Microsoft Entra目录中创建的用户对象没有 Member 的 UserType。

注意

“所有来宾和外部用户”选项现已替换为“来宾和外部用户”及其所有子类型。 对于以前选择了“所有来宾和外部用户”且具有条件访问策略的客户,现在将看到“来宾和外部用户”以及选择的所有子类型。 UX 中的此更改对条件访问后端评估策略的方式没有任何功能影响。 新的选择为客户提供了所需的细致程度,以在创建条件访问策略时选择特定类型的来宾和外部用户,从而决定是否将其纳入或排除在用户范围之外。

详细了解条件访问用户分配

Microsoft Entra外部用户的 MFA

在Microsoft Entra跨租户方案中,资源组织可以创建条件访问策略,这些策略要求对所有来宾和外部用户执行 MFA 或设备符合性。 通常情况下,访问资源的 B2B 协作用户随后需要使用资源租户设置其Microsoft Entra多重身份验证。 但是,Microsoft Entra ID现在能够信任来自其他Microsoft Entra租户的 MFA 声明。 通过另一租户启用 MFA 信任可简化 B2B 协作用户的登录过程。

如果您将入站信任设置配置为接受来自 B2B 协作用户主租户的 MFA 声明,Microsoft Entra ID 会检查用户的身份验证会话。 如果会话包含一个声明,指示在用户所在的主租户中已经符合多因素认证政策要求,则用户被授予了对您的共享资源无缝登录的权限。

详细了解如何为 MFA 配置入站信任设置

非Microsoft Entra ID外部用户的 MFA

对于非Microsoft Entra ID外部用户,资源租户始终负责 MFA。 下面的示例显示了一个典型的 MFA 流。 此方案适用于任何身份,包括 Microsoft 帐户(MSA)或社交 ID。 如果不配置与其所属的 Microsoft Entra 组织的信任设置,此流程也适用于 Microsoft Entra 外部用户。

  1. 一家名为 Fabrikam 的公司中的管理员或信息工作者邀请来自另一家名为 Contoso 的公司的用户使用 Fabrikam 的应用。

  2. Fabrikam 的应用配置为在访问时要求Microsoft Entra多重身份验证。

  3. 当 Contoso 的 B2B 协作用户尝试访问 Fabrikam 的应用时,系统会要求他们完成Microsoft Entra多重身份验证质询。

  4. 然后,来宾用户可以使用 Fabrikam 设置其Microsoft Entra多重身份验证,然后选择选项。

Fabrikam 必须具有足够的高级Microsoft Entra ID许可证,这些许可证支持Microsoft Entra多重身份验证。 然后,来自 Contoso 的用户消耗来自 Fabrikam 的许可证。

注意

MFA 在资源租户环境中完成,以确保可预测性。 当来宾用户登录时,他们将看到资源租户登录页面在后台显示,他们自己的主租户登录页面和公司徽标在前台显示。

Microsoft Entra B2B 协作用户的多重身份验证重置(重新认证)

以下 PowerShell cmdlet 可用于证明或请求 B2B 协作用户进行 MFA 注册。

  1. 连接到Microsoft Entra ID:

    Connect-Entra -Environment China -ClientId 'YOUR_CLIENT_ID' -TenantId 'YOUR_TENANT_ID' -Scopes 'User.Read.All'
    
  2. 使用身份验证方法获取所有用户:

    Get-EntraUser | where { $_.StrongAuthenticationMethods} | select userPrincipalName, @{n="Methods";e={($_.StrongAuthenticationMethods).MethodType}}
    
  3. 重置特定用户的Microsoft Entra多重身份验证方法,要求用户再次设置校对方法,例如:

    Connect-Entra -Environment China -ClientId 'YOUR_CLIENT_ID' -TenantId 'YOUR_TENANT_ID' -Scopes 'UserAuthenticationMethod.ReadWrite.All'
    Reset-EntraStrongAuthenticationMethodByUpn -UserPrincipalName jmorgan_fabrikam.com#EXT#@woodgrovebank.partner.onmschina.cn
    

设备合规性和Microsoft Entra混合加入的设备策略

组织可以使用条件访问策略来要求Microsoft Intune管理用户的设备。 此类策略可能会阻止外部用户访问,因为外部用户无法将其非托管设备注册到资源组织。 设备只能由用户的主租户管理。

但是,可以使用设备信任设置解除对外部用户的限制,同时仍然需要对托管设备进行要求。 在跨租户访问设置中,可以选择信任来自外部用户主租户的声明,了解用户设备是否符合其设备符合性策略,还是Microsoft Entra混合加入。 可以为所有Microsoft Entra组织或单个组织设置设备信任设置。

启用设备信任设置后,Microsoft Entra ID检查用户的身份验证会话以获取设备声明。 如果会话中包含一个设备声明,表明用户的主租户中已经符合相关策略,则允许外部用户无缝登录到共享资源。

重要

  • 除非你愿意信任关于设备合规性或外部用户在其 Microsoft Entra 主租户中的混合加入状态的声明,否则不建议应用要求外部用户使用受管理设备的条件访问策略。

设备筛选器

为外部用户创建条件访问策略时,可以根据Microsoft Entra ID中已注册设备的设备属性评估策略。 使用设备筛选器条件,可以使用支持的运算符和属性以及条件访问策略中的其他可用分配条件来指定具体设备。

设备筛选器可与跨租户访问设置结合使用,基于在其他组织中管理的设备建立策略。 例如,假设你想要基于特定设备属性阻止来自外部Microsoft Entra租户的设备。 可以采取以下步骤来设置基于设备属性的策略:

  • 配置跨租户访问设置,以信任来自该组织的设备声明信息。
  • 将要用于筛选的设备属性分配给受支持的设备扩展属性之一。
  • 使用设备筛选器创建条件访问策略,阻止访问包含该属性的设备。

详细了解针对具有条件访问的设备进行筛选的方法

移动应用程序管理策略

不建议对外部用户要求应用保护策略。 条件访问授权控制(如“需要已批准的客户端应用”“需要应用保护策略”)需要在资源租户中注册设备。 这些控制仅应用于 iOS 和 Android 设备。 由于用户的设备只能由其主租户管理,因此无法将这些控件应用于外部来宾用户。

基于位置的条件访问

如果邀请组织能够创建定义其合作伙伴组织的受信任 IP 地址范围,则可以执行基于 IP 范围的基于位置的策略

还可以基于地理位置执行策略。

条件访问客户端应用程序条件

针对 B2B 来宾用户的客户端应用条件的行为与针对其他类型用户的客户端应用条件的行为是一样的。 例如,你可以阻止来宾用户使用旧版身份验证协议。

条件访问会话控制

针对 B2B 来宾用户的会话控制的行为与针对其他类型用户的会话控制的行为是一样的。

后续步骤

有关详细信息,请参阅以下文章: