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

如何配置Azure VM托管身份以查看并访问所有订阅及资源?

配置Azure VM托管身份以访问所有订阅及资源

核心思路

要让VM的托管身份能查看所有订阅并访问所有资源,关键是在Azure AD租户根范围为该身份分配对应的租户级角色,而非仅在单个订阅或资源组层面分配。

具体操作步骤

  1. 获取VM托管身份的对象ID

    • 用Azure CLI执行:
      az vm identity show --resource-group <你的资源组名称> --name <VM名称> --query principalId -o tsv
      
    • 或在Azure门户中,进入VM的「身份」选项卡,直接查看系统/用户分配身份的对象ID。
  2. 在租户根范围分配角色
    需使用拥有全局管理员或特权角色管理员权限的账号操作:

    • 门户操作:
      • 进入Azure Active Directory,左侧菜单选择「角色和管理员」
      • 搜索并选中目标角色(仅查看选「全局读取者」,需全权限操作选「所有者」)
      • 点击「添加分配」,在成员列表中搜索VM托管身份的名称或对象ID,添加后保存分配。
    • CLI操作:
      先获取租户ID:
      az account show --query tenantId -o tsv
      
      执行角色分配(以全局读取者为例):
      az role assignment create --assignee <VM托管身份对象ID> --role "Global Reader" --scope "/"
      
      若需全权限访问,将角色名替换为"Owner"即可。
  3. 验证权限生效
    在VM上重新执行az login --identity,然后运行az account list查看是否能列出所有订阅,再尝试访问其他订阅的资源(如az vm list --subscription <目标订阅ID>)确认权限正常。

注意事项

  • 租户级角色分配的权限覆盖所有订阅,需严格遵循最小权限原则,避免过度授权。
  • 权限生效可能需要3-5分钟,若刚完成分配无法立即验证,稍等片刻再重试。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.18 19:49:54