你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

跨租户管理体验

作为服务提供商,可以使用 Azure Lighthouse 从自己的 Microsoft Entra 租户内管理客户的 Azure 资源。 许多常见任务和服务都可跨这些托管租户执行。

提示

还可在具有多个其自己的 Microsoft Entra 租户的企业中使用 Azure Lighthouse,以简化跨租户管理。

了解租户和委托

Microsoft Entra 租户是组织的一种表示形式。 它是组织通过注册 Azure、Microsoft 365 或其他服务与 Microsoft 建立关系时接收的 Microsoft Entra ID 的专用实例。 每个 Microsoft Entra 租户都是不同的,并与其他 Microsoft Entra 租户分开,有自己的租户 ID (GUID)。 有关详细信息,请参阅什么是 Microsoft Entra ID?

通常,为管理客户的 Azure 资源,服务提供商必须使用与该客户的租户关联的帐户登录 Azure 门户。 在这种情况下,客户租户中的管理员必须为服务提供商创建和管理用户帐户。

使用 Azure Lighthouse 时,加入过程在服务提供商租户中指定的用户是被分配了角色来处理客户租户中的委托订阅和资源组的用户。 然后,这些用户可以使用自己的凭据登录到 Azure 门户,并处理属于他们有权访问的所有客户的资源。 管理租户中的用户可以通过访问 Azure 门户中的我的客户页来查看所有这些客户。 他们还可以直接通过该客户的订阅的上下文、Azure 门户或 API 处理资源。

Azure Lighthouse 可灵活地管理多个客户的资源,而无需登录到不同租户中的不同帐户。 例如,服务提供商可能有两个客户,各自有不同的职责和访问级别。 使用 Azure Lighthouse 时,授权用户可以登录到服务提供商的租户,并根据分配给他们的针对每个委托的角色访问这些客户中的所有委托资源。

此图显示两个客户的通过一个服务提供商租户管理的资源。

API 和管理工具支持

可以在 Azure 门户中对委托资源执行管理任务,也可以使用 API 和管理工具(如 Azure CLI 和 Azure PowerShell)来这样做。 可以在委托的资源上使用所有现有 API,前提是跨租户管理支持此功能,并且用户具有相应的权限。

默认情况下,Azure PowerShell Get-AzSubscription cmdlet 显示管理租户的 TenantId。 使用每个订阅的 HomeTenantIdManagedByTenantIds 属性,你可以确定返回的订阅是属于托管租户还是管理租户。

同样,Azure CLI 命令(例如 az account list)会显示 homeTenantIdmanagedByTenants 属性。 如果在使用 Azure CLI 时看不到这些值,请尝试通过先运行 az account clear 再运行 az login --identity 来清除缓存。

在 Azure REST API 中,Subscriptions - GetSubscriptions - List 命令包括 ManagedByTenant

注意

除了与 Azure Lighthouse 相关的租户信息之外,这些 API 显示的租户还可能反映 Azure Databricks 或 Azure 托管应用程序的合作伙伴租户。

我们还提供了专用于执行 Azure Lighthouse 任务的 API。 有关详细信息,请参阅“参考”部分。

增强的服务和方案

大多数 Azure 任务和服务都可与跨托管租户的委托资源配合使用,前提是授予相应的角色。 下面是可特别有效进行跨租户管理的一些关键方案。

Azure Arc

Azure 自动化

  • 使用自动化帐户来访问和使用委托的资源

Azure 备份

  • 使用 Azure 备份来备份和还原客户数据。 目前,支持以下 Azure 工作负荷:Azure 虚拟机 (Azure VM)、Azure 文件存储、Azure VM 上的 SQL Server、Azure VM 上的 SAP HANA。 目前不支持利用备份保管库(例如 Azure Database for PostgreSQL、Azure Blob、Azure 托管磁盘和 Azure Kubernetes 服务)的工作负荷。
  • 查看备份中心中所有委托的客户资源的数据
  • 使用备份资源管理器可以查看备份项(包括尚未配置用于备份的 Azure 资源)的操作信息以及委托订阅的监视信息(作业和警报)。 备份资源管理器当前仅可用于 Azure VM 数据。
  • 跨委托订阅使用备份报告来跟踪历史趋势、分析备份存储消耗,以及审核备份和还原。

Azure 蓝图

  • 使用 Azure 蓝图协调资源模板和其他项目的部署(需要其他访问权限才能准备客户订阅)

Azure 成本管理 + 计费

  • 通过管理租户,CSP 合作伙伴可以查看、管理和分析 Azure 计划下的客户的税前消耗成本(不包含购买)。 该成本根据零售价和合作伙伴对客户订阅提供的 Azure 基于角色的访问控制 (Azure RBAC) 访问权限计算得出。 目前,可以根据 Azure RBAC 访问权限,查看每个单独客户订阅的零售费率消耗成本。

Azure Key Vault

  • 在客户租户中创建 Key Vault
  • 使用托管标识在客户租户中创建 Key Vault

Azure Kubernetes 服务 (AKS)

  • 管理托管的 Kubernetes 环境并部署和管理客户租户中的容器化应用程序
  • 部署和管理客户租户中的群集
  • 使用用于容器的 Azure Monitor 跨客户租户监视性能

Azure Migrate

  • 在客户租户中创建迁移项目并迁移 VM

Azure Monitor

  • 查看委托订阅的警报,并能够查看并刷新所有订阅的警报
  • 查看委派订阅的活动日志详细信息
  • 日志分析:从多个租户中的远程工作区查询数据(请注意,必须在同一租户中创建用于访问客户租户中工作区数据的自动化帐户)
  • 在客户租户中创建、查看和管理警报
  • 在客户租户中创建警报,通过 Webhook 在管理租户中触发自动化,例如 Azure Automation Runbook 或 Azure Functions
  • 在客户租户中创建的工作区中创建诊断设置,以便将资源日志发送到管理租户中的工作区
  • 对于 SAP 工作负荷,使用跨客户租户的聚合视图监视 SAP 解决方案指标
  • 对于 Azure AD B2C,将登录和审核日志路由到不同的监视解决方案

Azure 网络

Azure Policy

  • 在委托订阅中创建和编辑策略定义
  • 跨多个租户部署策略定义和策略分配
  • 在委托订阅中分配客户定义的策略定义
  • 客户将看到由服务提供商和自己创建的策略
  • 可以修正 deployIfNotExists 或修改托管租户内的分配
  • 请注意,当前不支持查看客户租户中不符合资源的符合性详细信息

Azure Resource Graph

  • 在返回的查询结果中查看租户 ID,以便确定订阅是否属于托管租户

Azure 服务运行状况

  • 通过 Azure 资源运行状况监视客户资源的运行状况
  • 跟踪客户使用的 Azure 服务的运行状况

Azure Site Recovery

  • 为客户租户中的 Azure 虚拟机管理灾难恢复选项(请注意,不能使用 RunAs 帐户复制 VM 扩展)

Azure 虚拟机

  • 使用虚拟机扩展在 Azure VM 上提供部署后配置和自动化任务
  • 使用启动诊断对 Azure VM 进行故障排除
  • 使用串行控制台访问 VM
  • 通过使用通过策略管理的标识,将 VM 与 Azure Key Vault 集成以使用密码、机密或加密密钥进行磁盘加密,确保机密存储在托管租户的 Key Vault 中
  • 请注意,不能将 Microsoft Entra ID 用于远程登录到 VM

Microsoft Defender for Cloud

  • 跨租户可见性
    • 对是否符合安全策略进行监视,确保安全措施涵盖所有租户的资源
    • 单个视图中跨多个租户的连续合规性监视
    • 通过安全分数计算监视、会审可操作安全建议,并设置其优先级
  • 跨租户安全状况管理
    • 管理安全策略
    • 对不符合可操作安全建议的资源执行操作
    • 收集并存储安全相关数据
  • 跨租户威胁检测和保护
    • 跨租户资源检测威胁
    • 应用高级威胁防护控制(如实时 (JIT) VM 访问)
    • 通过自适应网络强化来强化网络安全组配置
    • 通过自适应应用程序控制,确保服务器仅运行适当的应用程序和进程
    • 运用文件完整性监视 (FIM) 监视对重要文件和注册表项的更改
  • 请注意,必须将整个订阅委托给管理租户;委托资源组不支持 Microsoft Defender for Cloud 方案

Microsoft Sentinel

支持请求:

当前限制

对于所有方案,都请注意当前存在的以下限制:

  • 可以使用 Azure Lighthouse 执行 Azure 资源管理器处理的请求。 这些请求的操作 URI 都以 https://management.azure.com 开头。 但是,Azure Lighthouse 不支持由资源类型的实例处理的请求(如 Key Vault 机密访问或存储数据访问)。 这些请求的操作 URI 通常以实例特有的地址开头,例如 https://myaccount.blob.core.windows.nethttps://mykeyvault.vault.azure.net/。 后者通常也是数据操作,而非管理操作。
  • 角色分配必须使用 Azure 内置角色。 除了“所有者”或具有 DataActions 权限的任何内置角色之外,Azure Lighthouse 当前支持其他所有内置角色。 仅在向托管标识分配角色时才支持使用用户访问管理员角色。 不支持自定义角色和经典订阅管理员角色。 有关详细信息,请参阅 Azure Lighthouse 的角色支持
  • 对于托管租户中的用户,通过 Azure Lighthouse 进行的角色分配不会显示在访问控制 (IAM) 下,也不会使用 CLI 工具(如 az role assignment list)显示。 只能在 Azure 门户中 Azure Lighthouse 的“委派”部分查看这些分配,或通过 Azure Lighthouse API 查看这些分配。
  • 尽管你可以加入使用 Azure Databricks 的订阅,但管理租户中的用户无法在委托订阅上启动 Azure Databricks 工作区。
  • 虽然可以加入具有资源锁的订阅和资源组,但这些锁不会阻止管理租户中的用户执行操作。 用于保护系统管理资源(例如由 Azure 托管应用程序或 Azure 蓝图创建的资源)的拒绝分配(系统分配的拒绝分配)会阻止管理租户中的用户对这些资源进行操作。 但是,客户租户中的用户无法创建自己的拒绝分配。
  • 不支持跨国家云和 Azure 公有云或跨两个不同的国家云进行订阅委托。

后续步骤