建议小型机构使用单租户架构。但是,对于拥有超过 100 万用户的组织,我们建议使用多租户架构来缓解性能问题和租户限制,例如Azure 订阅和配额以及Azure AD 服务限制和限制

设计原则

在设计多租户架构时,请考虑以下设计原则以降低成本并提高效率和安全性:

  • 降低成本
    • 减少对本地基础设施和多个身份提供商的依赖。
    • 使用户能够使用自助服务(例如,Azure AD 自助服务密码重置)解锁其帐户或重置密码。
  • 提高效率
    • 跨租户标准化架构、配置和流程,以最大限度地减少管理问题。
    • 最大限度地减少用户从一个租户迁移到另一个租户的需要
  • 提高安全性
    • 专注于确保学生数据的安全。
    • 遵循最小权限原则:仅授予执行所需任务和实施即时 (JIT) 访问所需的权限。
    • 仅通过授权管理或Azure AD B2B 协作启用外部用户访问。
    • 将特定任务的管理委托给具有 Just Enough Access (JEA) 的特定用户来完成这项工作。

多个租户的常见原因

我们强烈建议用户少于 100 万的组织创建单个租户,除非其他条件表明需要多个租户。对于拥有 100 万或更多用户对象的组织,我们建议使用区域方法的多个租户。

创建单独的租户会对您的 EDU 环境产生以下影响。

  • 行政分离
    • 可以限制影响关键资源的管理安全或操作错误的影响。
    • 可能会限制受感染的管理员或用户帐户的影响。
    • 使用情况报告和审计日志包含在租户中。
  • 资源分离
    • 学生隐私。学生用户对象只能在对象所在的租户内发现。
    • 资源隔离。其他租户中的用户和管理员无法发现或枚举单独租户中的资源。
    • 对象足迹。通过 Microsoft Graph 或其他管理界面写入 Azure AD 和其他 Microsoft Online 服务的应用程序只能影响本地租户中的资源。
    • 配额。租户范围的Azure 配额和限制的使用与其他租户的使用是分开的。
  • 配置分离
    • 提供一组单独的租户范围设置,可以容纳具有不同配置要求的资源和信任应用程序。
    • 启用一组新的 Microsoft Online 服务,例如 Office 365。

除了拥有超过 100 万用户之外,以下考虑可能会导致多个租户。

  • 行政考虑
    • 您在法规下运营,这些法规限制了谁可以根据国籍国、居住国或许可级别等标准管理环境。
    • 您有合规性要求,例如要求您在特定本地区域创建身份的学生数据隐私。
  • 资源考虑
    • 您拥有可能用于研究和开发的资源,出于监管或业务关键原因,您必须保护这些资源不被现有管理员发现、枚举或接管。
    • 可以使用 MS Graph 或类似 API 大规模更改用户数据的自定义应用程序的开发周期(例如被授予 Directory.ReadWrite.All 的应用程序)
  • 配置注意事项
    • 具有与现有租户范围的安全或协作状态相冲突的资源,例如允许的身份验证类型、设备管理策略、自助服务的能力或外部身份的身份证明。

确定多租户方法

在本节中,我们考虑一所名为美术学院的虚构大学,在美国的 100 所学校中有 200 万名学生。这些学校共有130,000名教师和30,000名全职员工。

我们建议在部署多个租户时采用区域方法,如下所示:

  1. 首先将您的学生和教育工作者社区按地理区域划分,每个区域包含的用户少于 100 万。
  2. 为每个区域创建一个 Azure AD 租户。

    多租户方法。

  3. 调配相应区域的员工、教师和学生,以优化协作体验。

    在租户中配置。

为什么要使用区域?

建议采用区域方法来最大限度地减少跨租户移动的用户数量。如果您为每个学校级别(例如小学、初中和高中)创建了一个租户,则必须在每个学年结束时迁移用户。相反,如果用户保留在同一区域,则您不必在其属性发生变化时在租户之间移动它们。

区域方法的其他好处包括:

  • 每个区域内的最佳协作
  • 需要来自其他租户的最少数量的访客对象

当租户拥有超过 100 万用户时,管理体验和工具往往会随着时间的推移而降低。同样,某些最终用户体验(例如使用人员选择器)将变得繁琐且不可靠。

在没有令人信服的理由的情况下选择部署多个租户的较小组织将不必要地增加其管理开销和用户迁移数量。这样做还需要采取措施确保跨租户的协作体验。

使用 Azure AD B2B 协作进行跨租户协作

Azure AD B2B 协作使用户能够使用一组凭据登录到多个租户。对于教育机构而言,B2B 协作的好处包括:

  • 集中管理团队管理多个租户
  • 跨地区教师合作
  • 使用他们自己的凭据让父母和监护人入职
  • 外部合作伙伴,如承包商或研究人员

通过 B2B 协作,在一个租户(其家庭租户)中创建的用户帐户被邀请作为来宾用户到另一个租户(资源租户),并且该用户可以使用其家庭租户的凭据登录。管理员还可以使用 B2B 协作,通过与身份提供商(如FacebookMicrosoft 帐户Google企业身份提供商)建立联盟,使外部用户能够使用其现有的社交或企业帐户登录。

会员及嘉宾

Azure AD 租户中的用户根据其 UserType 属性是成员或来宾。默认情况下,成员用户是租户的本地用户。默认情况下,将 Azure AD B2B 协作用户添加为 UserType = Guest 的用户。来宾对目录和应用程序的权限有限。例如,来宾用户无法浏览租户中超出他们自己的个人资料信息的信息。但是,访客用户可以通过提供用户主体名称 (UPN) 或 objectId 来检索有关其他用户的信息。来宾用户还可以读取他们所属组的属性,包括组成员身份,而不管来宾用户的权限受限设置如何。

在某些情况下,资源租户可能希望将主租户中的用户视为成员而不是来宾。如果是,则可以使用 Azure AD B2B 邀请管理器 API 将主租户中的用户作为成员添加或邀请到资源租户。有关详细信息,请参阅Azure Active Directory B2B 协作用户的属性

多租户集中管理

使用 Azure AD B2B 载入外部身份。然后可以为外部身份分配特权角色,以集中 IT 团队成员的身份管理 Azure AD 租户。还可以使用 Azure AD B2B 为其他员工(例如区域或地区级别的管理员)创建来宾帐户。

但是,特定于服务的角色(例如 Exchange 管理员或 SharePoint 管理员)需要其租户的本地帐户。

以下角色可以分配给 B2B 帐户

  • 应用管理员
  • 应用程序开发人员
  • 认证管理员
  • B2C IEF 密钥集管理员
  • B2C IEF 政策管理员
  • 云应用 B2C IEF 策略管理员
  • 云设备 B2C IEF 策略管理员
  • 条件访问管理员
  • 设备管理员
  • 设备加入
  • 设备用户
  • 目录读者
  • 目录作者
  • 目录同步帐户
  • 外部 ID 用户流程管理员
  • 外部 ID 用户流属性管理员
  • 外部身份提供者
  • 群组管理员
  • 邀请嘉宾
  • 服务台管理员
  • 混合身份管理员
  • Intune 服务管理员
  • 许可证管理员
  • 密码管理员
  • 特权认证管理员
  • 特权角色管理员
  • 报告阅读器
  • 受限访客用户
  • 安全管理员
  • 安全阅读器
  • 用户帐户管理员
  • 工作场所设备加入

Azure AD 中的自定义管理员角色显示了内置角色的基础权限,以便您可以创建和组织自己的自定义角色。这种方法允许您在需要时以比内置角色更精细的方式授予访问权限。

下面是一个示例,说明管理如何处理可以跨多个租户委派和使用的管理角色。

Susie 的本机帐户位于区域 1 租户中,Azure AD B2B 用于将该帐户作为身份验证管理员添加到区域 2 和区域 3 租户中的中央 IT 团队。

集中管理。

跨多个租户使用应用程序

为了缓解与多租户环境中的应用程序管理相关的问题,您应该考虑编写多租户应用程序。您还需要验证哪些 SaaS 应用程序支持多个 IdP 连接。支持多个 IDP 连接的 SaaS 应用程序应在每个租户上配置单独的连接。不支持多个 IDP 连接的 SaaS 应用程序可能需要独立的实例。有关详细信息,请参阅如何:使用多租户应用程序模式登录任何 Azure Active Directory 用户

注意:许可模式可能因 SaaS 应用程序而异。与供应商核实以确定在多租户环境中是否需要多个订阅。

租户管理

特定于服务的角色需要按租户管理。特定于服务的角色需要具有租户本机的本地帐户。除了在每个租户中有一个集中的 IT 团队之外,你还需要在每个租户中有一个区域 IT 团队来管理 Exchange、SharePoint 和 Teams 等工作负载。

以下角色需要每个租户的本地帐户

  • Azure DevOps 管理员
  • Azure 信息保护管理员
  • 帐单管理员
  • CRM 服务管理员
  • 合规管理员
  • 合规数据管理员
  • 客户密码箱访问批准人
  • 桌面分析管理员
  • 交换管理员
  • 洞察管理员
  • 洞察商业领袖
  • Kaizala 管理员
  • Lync 服务管理员
  • 消息中心隐私阅读器
  • 消息中心阅读器
  • 打印机管理员
  • 印刷技术员
  • 搜索管理员
  • 搜索编辑器
  • 保安员
  • 服务支持管理员
  • SharePoint 管理员
  • 团队通讯管理员
  • 团队通信支持工程师
  • 团队沟通支持专家
  • 团队服务管理员

每个租户中的唯一管理员

如果您在每个地区都有一个 IT 团队,您可以让其中一位本地管理员管理团队管理。在以下示例中,Charles 位于区域 1 租户中,并具有 Teams 服务管理员角色。Alice 和 Ichiro 分别位于区域 2 和 3,并在各自的区域中担任相同的角色。每个本地管理员都有一个本地的本地帐户。

图 7。

跨租户的管理员角色

如果您没有每个区域的本地管理员池,您可以将 Teams 服务管理员角色仅分配给一个用户。在这种情况下,如下图所示,您可以通过在每个租户中为 Bob 创建一个本地帐户,让中央 IT 团队的 Bob 作为所有三个租户中的团队服务管理员。

图 9。

租户内管理员角色的委派

应使用管理单位(AU) 对 Azure AD 用户和组进行逻辑分组。使用行政单位限制行政范围对于由不同地区、地区或学校组成的教育组织很有用。

例如,我们虚构的美术学院分布在三个地区,每个地区包含多所学校。每个地区都有一个 IT 管理员团队,负责控制访问、管理用户并为各自学校设置策略。

例如,IT 管理员可以:

  • 为区域 1 中的每所学校的用户创建一个 AU,以管理该学校的所有用户。(没有上图)
  • 创建一个包含每所学校教师的 AU,以管理教师帐户。
  • 创建一个单独的 AU,其中包含每所学校的学生,以管理学生帐户。
  • 为学校的教师分配学生AU的密码管理员角色,以便教师可以重置学生密码,但不能重置其他用户的密码。

行政单位。

可以限定为管理单位的角色包括:

  • 认证管理员
  • 群组管理员
  • 服务台管理员
  • 许可证管理员
  • 密码管理员
  • 用户管理员

有关详细信息,请参阅将作用域角色分配给管理单位

跨租户管理

在每个租户中单独配置设置。然后在可能的情况下将其配置为租户创建的一部分,以帮助尽量减少重新访问这些设置的必要性。虽然一些常见任务可以自动化,但没有内置的跨租户管理门户。

大规模管理对象

Microsoft Graph (MS Graph)Azure AD PowerShell 可让您大规模管理目录对象。它们还可用于管理租户中的大多数策略和设置。但是,您应该了解以下性能注意事项:

  • MS Graph 将用户、组和成员资格更改的创建限制为每个租户每小时 72,000 次。
  • MS Graph 性能可能会受到用户驱动的操作(例如租户内的读取或写入操作)的影响
  • MS Graph 性能可能会受到租户内其他竞争性 IT 管理任务的影响
  • PowerShell、SDS、Azure AD Connect 和自定义配置解决方案通过 MS Graph 以不同的速率添加对象和成员资格

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注