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

如何为Azure容器注册表多用户配置R/RW/ADM权限身份认证?

给Azure容器注册表配置多用户R/RW/ADM权限的方法

嗨,我来帮你梳理下怎么给多个用户配置Azure容器注册表(ACR)的不同访问权限。Azure主要靠**RBAC(基于角色的访问控制)**来管理ACR的权限,不同的权限需求对应不同的内置角色,先给你明确下对应关系:

  • 只读权限(R):对应AcrPull角色,用户只能拉取镜像,没法推送或修改注册表的配置
  • 读写权限(RW):对应AcrPush角色,用户既能拉取也能推送镜像,但不能管理注册表本身(比如修改设置、删除注册表)
  • 管理员权限(ADM):对应AcrAdmin角色,拥有注册表的全部权限,包括镜像操作、配置修改、权限管理等

下面给你两种常用的配置方式,按需选择就行:

方法一:通过Azure Portal可视化配置

  1. 登录Azure Portal,找到你已经创建好的容器注册表
  2. 在左侧导航栏里找到「访问控制(IAM)」选项,点击进入
  3. 点击页面上方的「添加」→「添加角色分配」
  4. 在「角色」选项卡中,根据需求选择对应的角色(比如要给用户只读权限就选AcrPull)
  5. 切换到「成员」选项卡,点击「选择成员」,在搜索框里逐个查找需要授权的用户,选中后点击「选择」(支持多选)
  6. 最后点击「查看+分配」确认所有配置,完成后这些用户就会拥有对应的ACR权限了

方法二:通过Azure CLI批量配置

如果需要给大量用户批量授权,用命令行会更高效:

单个用户授权命令

az role assignment create \
  --assignee "用户邮箱或Azure AD对象ID" \
  --role "AcrPull"  # 可替换为AcrPush/AcrAdmin \
  --scope "/subscriptions/你的订阅ID/resourceGroups/你的资源组名称/providers/Microsoft.ContainerRegistry/registries/你的注册表名称"

批量用户授权脚本

把需要授权的用户邮箱整理到一个文本文件(比如users.txt),每行一个邮箱,然后用下面的脚本循环执行授权:

#!/bin/bash
# 替换为你需要的角色:AcrPull/AcrPush/AcrAdmin
TARGET_ROLE="AcrPush"
# 替换为你的注册表资源范围
ACR_SCOPE="/subscriptions/xxx-xxx-xxx/resourceGroups/my-resource-group/providers/Microsoft.ContainerRegistry/registries/my-acr"

# 循环读取用户列表并授权
while read USER_EMAIL; do
  echo "正在给用户 $USER_EMAIL 分配 $TARGET_ROLE 权限..."
  az role assignment create \
    --assignee "$USER_EMAIL" \
    --role "$TARGET_ROLE" \
    --scope "$ACR_SCOPE"
done < users.txt

执行脚本前记得替换占位符内容,并且确保你已经登录了Azure CLI(az login)。

小提醒:管理员权限(AcrAdmin)权限很高,建议只给少数需要管理注册表的用户分配,避免权限滥用。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.28 06:16:04