You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何配置Azure Custom Owner Role仅可查看并分配该特定角色

Azure自定义角色权限配置方案(仅可查看/分配指定角色)

你需要通过「权限列表裁剪+分配范围约束+分配条件兜底」三层配置实现需求,具体操作如下:

一、自定义角色权限项配置

编辑自定义角色的JSON权限定义,按如下规则配置Actions和NotActions字段:

  • 需加入Actions的允许权限:
    • Microsoft.Authorization/roleAssignments/read:读取角色分配记录
    • Microsoft.Authorization/roleAssignments/write:创建角色分配
    • Microsoft.Authorization/roleAssignments/delete:删除角色分配
    • Microsoft.Authorization/roleDefinitions/read:读取角色定义
  • 需加入NotActions的禁止权限:
    • Microsoft.Authorization/roleDefinitions/write:禁止修改任意角色定义
    • Microsoft.Authorization/roleDefinitions/delete:禁止删除任意角色定义
    • Microsoft.Authorization/elevateAccess/*:禁止提权操作
    • 如果你不需要给该角色开放其他Azure资源操作权限,直接移除所有非上述授权项的权限,不要使用*通配符授权。

二、角色分配范围约束

将配置好的自定义角色分配给目标RBAC组时,不要直接选择订阅/管理组根范围,需拆分两个独立的分配范围:

  1. 角色定义读取范围:范围精准选择你创建的目标Custom Owner Role的资源ID,仅在这个范围下生效Microsoft.Authorization/roleDefinitions/read权限,从范围层面限制用户只能看到这一个指定角色,无法枚举其他内置、自定义角色。
  2. 业务资源分配范围:范围选择你允许用户分配该角色的目标资源层级(可以是指定资源组、单个资源,按需选择),在这个范围下生效角色分配相关的读写删权限。

三、角色分配条件兜底

在业务资源分配范围的角色分配条目上,添加如下权限条件,拦截非目标角色的分配操作:

@Request[Microsoft.Authorization/roleAssignments:RoleDefinitionId] StringEquals <你的Custom Owner Role的完整资源ID>

该条件会校验所有创建/删除角色分配的请求,只有操作对象是你指定的Custom Owner Role时才会放行,彻底避免用户分配其他角色。

注意:配置完成后可以用测试账号登录验证,确认无法枚举其他角色、无法为其他角色创建分配即可。

内容的提问来源于stack exchange,提问作者Hinda

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.29 10:12:22