Compartir a través de

多租户资源隔离

在某些特定情况下,在单个租户范围内委托管理无法满足你的需求。 本部分讨论了可能推动你创建多租户体系结构的要求。 多租户组织可能跨越两个或多个Microsoft Entra租户。 这可能导致需要满足独特的跨租户协作和管理要求。 多租户体系结构会增加管理开销和复杂性,应谨慎使用。 建议使用单个租户(如果需求可以通过该体系结构得到满足)。 有关更多详细信息,请参阅多租户用户管理

单独的租户会创建一条新的边界,从而实现 Microsoft Entra 目录角色、目录对象、条件访问策略、Azure 资源组、Azure 管理组以及其他控件的独立管理,如前几节所述。

单独的租户对组织的 IT 部门非常有用,用于验证Microsoft服务(例如 Intune、Microsoft Entra Connect 或混合身份验证配置)中租户范围的更改,同时保护组织的用户和资源。 这包括测试服务配置,这些配置可能会产生租户范围的影响,并且不能局限于生产租户中的一部分用户。

在开发可使用 MS Graph 或类似 API 更改生产用户对象数据的自定义应用程序(例如,被授予 Directory.ReadWrite.All 或类似的宽范围的应用程序)的过程中,可能有必要在单独的租户中部署非生产环境。

注意事项

Microsoft Entra Connect 同步到多个租户,在单独租户中部署非生产环境时可能非常有用。 有关详细信息,请参阅 Microsoft Entra Connect:支持的拓扑

结果

除了使用前述单个租户体系结构实现的结果外,组织还可以完全分离资源和租户交互:

资源分离

  • 可见性 - 无法由其他租户中的用户和管理员发现或枚举单独的租户中的资源。 同样,使用情况报告和审核日志包含在新的租户边界内。 这种可见性分离允许组织管理机密项目所需的资源。

  • Object 占用空间 - 通过Microsoft Graph或其他管理接口写入Microsoft Entra ID和其他Microsoft Online 服务的应用程序可以在单独的对象空间中运行。 这使开发团队能够在软件开发生命周期期间执行测试,而不会影响其他租户。

  • Quotas - 每个租户的Azure配额和限制的消耗量是独立于其他租户的。

配置分离

新租户提供了一组单独的租户范围设置,可以容纳资源和信任应用程序(这些应用程序具有在租户级别需要不同配置的要求)。 此外,新租户还提供一组新的Microsoft联机服务,例如Office 365。

管理分离

新的租户边界涉及一套独立的 Microsoft Entra 目录角色,这使您能够配置不同的管理员组。

常见用法

下图演示了多个租户中资源隔离的常见用法:预生产环境(或“沙盒”环境),该环境需要的分离比在单个租户中的委派管理实现的分离更多。

显示常见使用场景的图表。

Contoso 是一个组织,通过使用名为 ContosoSandbox.com 的预生产租户,增强了他们的公司租户架构。 沙盒租户用于支持企业解决方案的持续开发,这些解决方案通过 Microsoft Graph 写入 Microsoft Entra ID 和 Microsoft 365。 这些解决方案在公司租户中部署。

沙盒租户被上线,以防止正在开发的应用程序通过消费租户资源、影响配额或进行流量限制,直接或间接地影响生产系统。

开发人员需要在开发生命周期期间访问沙盒租户,理想情况下,自助访问需要在生产环境中受限的额外权限。 这些附加权限的示例可能包括创建、删除和更新用户帐户、注册应用程序、预配和取消预配Azure资源,以及对策略或环境整体配置的更改。

在此示例中,Contoso 使用 Microsoft Entra B2B Collaboration 预配企业租户中的用户,以允许用户在沙盒租户中管理和访问应用程序中的资源,而无需管理多个凭据。 此功能主要面向跨组织协作场景。 但是,具有多个租户的企业(如 Contoso)可以使用此功能来避免额外的凭据生命周期管理和复杂的用户体验。

使用 External Identities 跨租户访问 设置来管理通过 B2B 协作与其他 Microsoft Entra 组织协作的方式。 这些设置确定外部 Microsoft Entra 组织中的用户对您资源的入站访问级别,以及您的用户对外部组织的出站访问级别。 它们还允许你信任来自其他Microsoft Entra组织的多重身份验证(MFA)和设备声明(符合性声明和Microsoft Entra混合联接声明)。 有关详细信息和规划注意事项,请参阅 Microsoft Entra External ID 中的跨租户访问权限。

另一种方法是利用 Microsoft Entra Connect 的功能,将相同的本地Microsoft Entra凭据同步到多个租户,同时保留相同的密码,但在用户 UPN 域中区分。

多租户资源隔离

使用新租户时,你会有一个独立的管理员团队。 组织可以选择通过 Microsoft Entra B2B 协作使用公司标识。 同样,组织还可以实现 Azure Lighthouse,以便跨租户管理Azure资源,以便非生产Azure订阅由生产对应项中的标识管理。 Azure Lighthouse不能用于管理Azure之外的服务,例如Microsoft Intune。 对于托管服务提供商(MSP),Microsoft 365 Lighthouse是一个管理门户,帮助使用 Microsoft 365 Business Premium、Microsoft 365 E3 或 Windows 365 Business 的中小型企业(SMB)客户大规模保护和管理设备、数据和用户。

这将允许用户继续使用其公司凭据,同时实现分离的好处。

Microsoft Entra 沙盒租户中的 B2B 协作应配置为只允许通过 Azure B2B 使用 允许/拒绝列表加入来自企业环境的标识。 对于想要允许 B2B 的租户,请考虑使用外部标识跨租户访问设置进行跨租户多重身份验证\设备信任。

重要

启用了外部标识访问的多租户体系结构仅提供资源隔离,不启用标识隔离。 使用 Microsoft Entra B2B 协作和Azure Lighthouse的资源隔离不会降低与标识相关的风险。

如果沙盒环境与公司环境共享标识,则以下场景适用于沙盒租户:

  • 在公司租户中入侵用户、设备或混合基础结构,并受邀进入沙盒租户的恶意参与者可能会获取对沙盒租户的应用和资源的访问权限。

  • 公司租户中的操作错误(例如,删除用户帐户或吊销凭据)可能会影响受邀用户对沙盒租户的访问。

必须执行风险分析,并可能需要考虑通过多个租户进行标识隔离,才能获得需要高度防御方法的业务关键型资源。 Azure Privileged Identity Management可以通过为访问业务关键租户和资源施加额外的安全性来帮助缓解一些风险。

目录对象

用于隔离资源的租户可能包含与主租户相同的对象类型、Azure资源以及信任应用程序。 可能需要预配以下对象类型:

用户和组:解决方案工程团队所需的标识,例如:

  • 沙盒环境管理员。

  • 应用程序的技术所有者。

  • 业务线应用程序开发者。

  • 测试最终用户帐户。

可以为以下项预配这些标识:

  • 通过使用公司帐户参与 Microsoft Entra B2B 协作 的员工。

  • 为了管理、紧急管理访问或由于其他技术原因需要本地帐户的员工。

拥有或需要非生产环境Active Directory的本地客户,还可以根据底层资源和应用程序的需要,将其本地身份同步到沙盒租户。

设备:非生产租户包含的设备数量减少到解决方案工程周期所需的程度:

  • 管理工作站

  • 开发、测试和文档编制所需的非生产计算机和移动设备

应用程序

Microsoft Entra集成应用程序:适用于: 的应用程序对象和服务主体:

  • 测试在生产环境中部署的应用程序实例(例如,将数据写入 Microsoft Entra ID 和 Microsoft 在线服务的应用程序)。

  • 用于管理和维护非生产租户的基础设施服务,可能是企业租户中可用解决方案的子集。

Microsoft Online Services:

  • 通常,在生产中拥有 Microsoft Online Services 的团队应该是拥有这些服务的非生产实例的团队。

  • 非生产测试环境的管理员不应预配 Microsoft Online Services,除非这些服务经过专门测试。 这可以避免不适当的使用Microsoft服务,例如在测试环境中设置生产SharePoint站点。

  • 同样,可以由最终用户发起的 Microsoft Online 服务的预配(也称为临时订阅)应该被锁定。 有关详细信息,请参阅 什么是自助注册 Microsoft Entra ID?

  • 通常,应为使用基于组的许可的租户禁用所有非必要的许可功能。 这应该由管理生产租户中的许可证的同一团队完成,以避免可能不知道启用许可功能的影响的开发人员进行错误配置。

Azure资源

还可以部署信任应用程序所需的任何Azure资源。 例如,数据库、虚拟机、容器、Azure函数等。 对于您的沙盒环境,您必须权衡使用相对便宜的 SKU 来节省成本与较少的可用安全功能之间的利弊。

访问控制的 RBAC 模型仍应在非生产环境中使用,以防在测试结束后将更改复制到生产环境中。 否则,非生产环境中的安全漏洞就会传播到生产租户。

资源和身份隔离与多个租户

隔离结果

在有限的情况下,资源隔离无法满足要求。 可以通过禁用所有跨租户协作功能和有效地构建单独的标识边界,隔离多租户体系结构中的资源和标识。 此方法是针对企业租户中的操作错误和用户标识、设备或混合基础设施泄漏的防御措施。

隔离常见用法

单独的标识边界通常用于业务关键应用程序和资源,例如面向客户的服务。 在此场景中,Fabrikam 决定为其面向客户的 SaaS 产品创建单独的租户,以避免员工标识泄露影响其 SaaS 客户的风险。 上图说明了 Fabrikam 和 FabrikamSaaS 之间的边界。 FabrikamSaaS 租户包含作为 Fabrikam 业务模式一部分向客户提供的应用程序所使用的环境。

隔离目录对象

FabrikamSaas 中的目录对象如下所示:

用户和组:解决方案 IT 团队、客户支持人员或其他必要人员所需的标识是在 SaaS 租户中创建的。 若要保留隔离,仅使用本地帐户,并且未启用Microsoft Entra B2B 协作。

Azure AD B2C 目录对象:如果客户访问租户环境,它可能包含Azure AD B2C 租户及其关联的标识对象。 保留这些目录的订阅对于面向使用者的独立环境来说是很好的选择。

设备:此租户包含的设备数已减少;仅包含运行面向客户的解决方案所需的设备数:

  • 保护管理工作站。

  • 支持人员工作站(这可以包括如上所述“待命”的工程师)。

隔离应用程序

Microsoft Entra集成应用程序:应用程序对象和服务主体:

  • 生产应用程序(例如多租户应用程序定义)。

  • 用于管理和维护面向客户的环境的基础结构服务。

Azure资源:托管面向客户的生产实例的 IaaS、PaaS 和 SaaS 资源。

后续步骤