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

Azure RBAC自定义角色定义的生命周期、范围与存储机制问询

Azure RBAC自定义角色定义:存储、生命周期与范围关系解析

场景重现

创建名为some-custom-role的自定义角色,指定subscription_1和subscription_2为可分配范围后,执行以下Azure CLI命令:

az role definition list --name some-custom-role --subscription subscription_2 --query [].id -otsv

/subscriptions/subscription_2/providers/Microsoft.Authorization/roleDefinitions/b633f26b-3b4b-42ca-a0ed-501c354e4d23

az role definition list --name some-custom-role --subscription subscription_1 --query [].id -otsv

/subscriptions/subscription_1/providers/Microsoft.Authorization/roleDefinitions/b633f26b-3b4b-42ca-a0ed-501c354e4d23

针对上述结果,以下是核心疑问的解答:

核心疑问解答

  • 是否存在“主”角色定义和副本?
    不存在主副本之分。你看到的两个不同ID条目,是同一个角色定义在不同订阅范围下的视图。角色的唯一标识是末尾的roleDefinitionId(b633f26b-3b4b-42ca-a0ed-501c354e4d23),前面的订阅ID仅表示该角色被应用的范围。修改任意订阅下的角色定义,本质是修改共享的底层实体,因此其他订阅下的视图会同步更新。

  • 删除单个订阅,角色定义会消失吗?
    不会。删除subscription_1后,subscription_2下的角色定义仍会保留——只要还有至少一个订阅属于该角色的可分配范围,角色定义就不会被删除。

  • 删除两个订阅,角色定义会消失吗?
    会。当所有关联的订阅都被删除后,角色定义失去了所有可分配范围,会被自动清理。

  • 删除单个订阅中的角色定义,另一个会消失吗?
    这取决于剩余的可分配范围:执行删除单个订阅下的角色定义操作,本质是将该订阅从角色的可分配范围中移除。如果移除后还有其他订阅(比如subscription_2)在范围内,角色定义会保留并仅在剩余订阅可见;如果没有其他订阅,则角色定义会被删除。

  • 是否存在源对象存储在Entra或其他位置?
    自定义角色定义存储在Azure资源管理器(ARM)的权限系统中,而非Entra ID。所有共享同一个roleDefinitionId的条目指向同一个底层实体,ARM通过跨范围同步机制确保各订阅视图的一致性,不存在单独的集中存储源对象。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.05 10:11:22