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

Azure更新服务主体作用域 新增资源组/配置订阅级访问方法

Azure服务主体权限调整操作指引

你不需要重新创建服务主体,两类需求都可以直接通过Azure CLI的角色分配命令实现,原有服务主体的密钥、ID等凭证不会发生变更。

1. 为服务主体添加第二个资源组的访问权限

你之前创建服务主体时的命令,本质是创建完服务主体后,自动在指定的第一个资源组范围为其绑定了参与者(Contributor)角色。新增第二个资源组的权限,只需要新增一条对应范围的角色分配即可,原有资源组的权限不会受影响:

  • 如果已经丢失了服务主体的appId,先执行以下命令查询:
    az ad sp list --display-name "MyApp" --query "[].appId" -o tsv
    
  • 执行角色分配命令,为第二个资源组授权:
    az role assignment create \
      --assignee <上一步查到的服务主体appId> \
      --role contributor \
      --scope /subscriptions/{替换为你的订阅ID}/resourceGroups/{替换为第二个资源组名称}
    
  • 执行以下命令验证权限配置,返回结果中能看到两个资源组范围的Contributor角色分配即为配置成功:
    az role assignment list --assignee <服务主体appId> -o table
    

2. 将服务主体访问范围调整为整个订阅级别

该操作完全支持,你可以直接在订阅范围为服务主体绑定对应角色,不需要删除原有资源组级别的权限;如果不需要保留零散的资源组级权限,也可以后续手动删除:

  • 执行以下命令,为服务主体授予订阅级别的Contributor权限:
    az role assignment create \
      --assignee <服务主体appId> \
      --role contributor \
      --scope /subscriptions/{替换为你的订阅ID}
    
  • (可选)如果需要清理原有资源组级别的角色分配,先查询所有现有分配的ID和对应范围:
    az role assignment list --assignee <服务主体appId> --query "[].{id:id, scope:scope}" -o table
    
    找到scope为对应资源组的分配条目ID,执行删除命令即可:
    az role assignment delete --ids <要删除的角色分配ID>
    

注意:订阅级别的Contributor权限覆盖范围极广,允许服务主体对订阅下几乎所有资源执行管理操作,生产环境建议遵循最小权限原则评估后再配置。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.28 11:03:24