管理对 Azure Monitor 工作区的访问权限

确定可在 Azure Monitor 工作区中访问哪些数据的因素包括:

  • 工作区本身的设置。
  • 您对发送数据至工作区的资源的访问权限。
  • 访问工作区所用的方法。

本文介绍如何管理对 Azure Monitor 工作区中数据的访问。

概述

下表描述了定义可访问的数据的因素。 以下各节将进一步介绍每个因素。

因子 Description
查询范围 用于查询 Azure 针对所有 Azure Monitor 工作区指标公开的 Prometheus HTTP API 的方法。 定义可用数据的范围,以及应用的访问控制模式。
访问控制模式 工作区中的设置,用于定义是要在工作区级别还是资源级别应用权限。
Azure 基于角色的访问控制 (RBAC) 应用于工作区或向工作区发送数据的资源的个人或用户组的权限。 定义你有权访问的数据。

查询范围

查询范围是指如何访问 Azure Monitor 工作区并定义可以访问的数据。

有两个查询范围:

  • 工作区范围:可以查看你有权访问的工作区中的所有指标。 这些查询的范围限定为你有权访问的工作区中的所有数据。 在 Azure 门户中的任何 Azure Monitor 仪表板上选择 Azure Monitor 工作区范围时,将会使用该工作区范围。

  • 资源范围:访问特定资源、资源组或订阅的指标时,例如从 Azure 门户中的资源菜单中选择 指标 时,将使用 Azure RBAC,以便仅查看有权访问的资源的指标。 根据为托管资源指标的工作区配置的访问控制模式,除了查询资源之外,可能需要直接访问工作区。

仅当指标与相关资源关联时,指标才可用于资源范围查询。 若要检查此关联,请运行查询并验证 Microsoft.resourceid 是否已填充维度。

以下资源存在限制:

比较查询范围

下表总结了使用每个查询范围的情境和角色:

問题 工作区范围 资源范围
每个模型都面向谁? 管理中心。
需要配置数据收集和需要访问各种资源的用户的管理员。 目前,需要访问 Azure 外部资源指标的用户,例如通过远程写入发送的指标,而不需要在托管机器上启用 Azure Arc。
应用程序团队。
正在监视的 Azure 资源的管理员。 允许他们专注于其资源,而无需筛选。
用户需要什么才能查看指标? 对工作区的权限。
请参阅“ 使用工作区权限管理访问权限”中的“工作区权限”。
对资源的读取访问权限。
请参阅“使用 Azure 权限管理访问权限”中的“资源权限”。 权限可以从资源组或订阅继承,也可以直接分配给资源。 资源的度量权限将被自动分配。 用户不需要访问工作区。
权限的范围是什么? Workspace.
有权访问工作区的用户可以查询工作区中的所有指标。
Azure 资源。
用户可以查询他们有权在任何工作区中访问的特定资源、资源组或订阅的指标,但无法查询其他资源的指标。
用户如何访问指标? Azure Monitor 菜单上,选择 “指标”。

Azure Monitor 工作区中选择“指标”

在为资源类型选择 Azure Monitor 工作区时从 Azure Monitor。
在 Azure 资源的菜单中选择 “指标 ”。 用户将有权访问该资源的数据。

Azure Monitor 菜单中选择“指标”。 用户有权访问他们有权访问的所有资源的数据。

访问控制模式

访问控制模式是每个工作区的设置,用于定义如何确定工作区的权限。

  • 需要工作区权限。 此控制模式不允许在资源级别进行精细的 Azure 角色访问控制 (RBAC)。 若要访问工作区,必须 向用户授予对工作区的权限

    当用户将查询范围限定为 工作区时,将应用工作区权限。 当用户将查询范围限定为 资源时,将验证工作区权限和资源权限。

    此设置是 2025 年 10 月之前创建的所有工作区的默认值。

  • 使用资源或工作区权限。 此控制模式允许精细 Azure RBAC。 可以通过分配 Azure read 权限向用户授予访问权限,仅允许他们访问与他们能查看的资源相关的数据。

    当用户将查询范围限定为 工作区时,将应用工作区权限。 当用户将查询范围限定为 资源时,只会验证资源权限,并忽略工作区权限。

    此设置是 2025 年 10 月之后创建的所有工作区的默认值。

    注释

    如果用户只有工作区的资源权限,则他们只能使用资源范围的查询访问工作区,前提是工作区访问模式设置为 “使用资源或工作区权限”。 权限部分详细介绍了不同方案所需的特定 Azure RBAC 权限。

为工作区配置访问控制模式

资源管理器

若要在 Azure 资源管理器模板中配置访问模式,请将工作区上的 enableAccessUsingResourcePermissions 功能标志设置为以下值之一:

  • false:将工作区设置为 工作区上下文 权限。 如果未设置标志,则此设置为默认值。

  • true:将工作区设置为 资源上下文 权限。

    注释

    ARM 模板是目前唯一支持为 Azure Monitor 工作区配置访问控制的方法。


Azure RBAC

使用 Azure RBAC 管理对工作区的访问。 若要使用 Azure 权限授予对 Azure Monitor 工作区的访问权限,请按照 分配 Azure 角色中的步骤管理对 Azure 订阅资源的访问权限

内置角色

将用户分配到这些角色,以在不同的范围内授予他们访问权限:

  • 订阅:访问订阅中的所有工作区
  • 资源组:访问资源组中的所有工作区
  • 资源:仅访问指定的工作区

在资源级别(工作区)创建分配,以确保准确的访问控制。 使用 自定义角色 创建具有所需特定权限的角色。

注释

若要向用户角色添加和删除用户,必须具有 Microsoft.Authorization/*/DeleteMicrosoft.Authorization/*/Write 权限。

监视读取者

监视读取者角色的成员可以查看所有监视数据和监视设置,包括在所有 Azure 资源上配置 Azure 诊断。 允许成员查看有关分配范围内资源的所有数据,包括:

  • 查看和查询所有监视数据(例如指标)
  • 查看监视设置,包括查看所有 Azure 资源上的 Azure 诊断配置或访问控制模式的设置。

监视阅读者角色包括以下 Azure 操作:

类型 许可 Description
Action */read 能够使用 Microsoft.resourceid 标记查看有关该资源的所有 Azure 资源、资源配置和指标。
对于工作区,允许完全不受限制的权限读取工作区设置和查询数据。
Action Microsoft.Support/* 能够打开支持案例。

监控贡献者

监视参与者角色的成员可以查看订阅中的所有监视数据。 它们还可以创建或修改监视设置,但不能修改任何其他资源。

此角色是监视读取者角色的超集。 它适用于组织监视团队或托管服务提供商的成员,除了前面提到的权限外,还需要:

  • 读取由监视读取者角色授予的所有监控数据。
  • 在门户中查看监视仪表板,并创建自己的专用监视仪表板。
  • 为资源创建和编辑诊断设置。
  • 使用 Azure 警报设置警报规则活动和设置。

有关角色中包含的 Azure 操作的详细列表,请参阅 监视参与者

资源权限

若要将查询范围限定为 资源,需要对资源拥有以下权限:

许可 Description
Microsoft.Insights/metrics/*/read 能够查看资源的所有指标数据

权限通常由包含*/read 或权限的角色(例如内置的阅读者,参与者角色)授予。 包含特定操作或专用内置角色的自定义角色可能不包含这一权限。

后续步骤