You need to enable JavaScript to run this app.
文档中心
镜像仓库

镜像仓库

复制全文
下载 pdf
IAM 授权
授权指定命名空间镜像推拉权限
复制全文
下载 pdf
授权指定命名空间镜像推拉权限
实际业务场景中,通常需要对指定项目中的子账号添加权限限制,以确保权限的最少可用。例如,仅支持推送指定镜像仓库命名空间中的镜像。本文介绍如何为项目中子账号,添加指定命名空间中镜像的推送权限。​
场景介绍​
为子账号 cr-demo 添加标准版实例 instance-a、命名空间 library 中镜像的 推送 权限和项目 cr-demo-project 的权限。​
授权完成后,子账号支持拉取该命名空间下所有镜像实例,并且支持通过 OpenAPI 查询该命名空间的信息以及该命名空间下所有镜像实例的相关信息。​
本示例中的自定义策略包含两部分:​
  • 访问镜像仓库必须添加的策略 custom-cr:角色和实例相关策略 SetUser、GetUser、ListRegistries 。​
  • ​
    {​
    "Statement": [​
    {​
    "Effect": "Allow",​
    "Action": [​
    "cr:GetUser",​
    "cr:SetUser",​
    "cr:ListRegistries"​
    ],​
    "Resource": [​
    "*"​
    ]​
    }​
    ]​
    }​
    ​
  • 本场景中项目策略 custom-cr-for-project:标准版实例下命名空间(例如:标准版实例 instance-a,命名空间 library)的推送镜像的策略。​
  • ​
    {​
    "Statement": [​
    {​
    "Effect": "Allow",​
    "Action": [​
    "cr:List*",​
    "cr:Get*",​
    "cr:Pull*",​
    "cr:Push*"​
    ],​
    "Resource": [​
    "trn:cr:*:*:instance/instance-a", ​
    "trn:cr:*:*:repository/instance-a/library", ​
    "trn:cr:*:*:repository/instance-a/library/*"​
    ]​
    }​
    ]​
    }​
    ​
前提条件​
已基于业务场景创建项目,操作说明参见 项目管理 。本文中示例项目名称为 cr-demo-project。​
操作步骤​
第一步:创建并添加全局授权​
  1. 登录 访问控制控制台 。​
  1. 在左侧导航栏,单击 策略管理。​
  1. 在 策略管理 页面,单击 新建自定义策略 。​
  1. 在 新建自定义策略 对话框,根据下文的示例代码创建策略 custom-cr。​
  • ​alt​​
  • ​
    {​
    "Statement": [​
    {​
    "Effect": "Allow",​
    "Action": [​
    "cr:GetUser",​
    "cr:SetUser",​
    "cr:ListRegistries"​
    ],​
    "Resource": [​
    "*"​
    ]​
    }​
    ]​
    }​
    ​
说明​
编辑策略内容时需要遵循 IAM 的策略语法。详细信息,请参见 策略语法。​
  1. 单击 提交,完成创建。​
  1. 在创建成功页面,单击 添加授权。​
  1. 选择目标子账号 cr-demo。​
​alt​​
8. 单击 确定 完成添加​
第二步:创建并添加项目权限​
在目标项目维度(cr-demo-project)为用户授予镜像仓库读写权限,即在项目维度添加 custom-cr-for-project 策略。​
  1. 登录 访问控制控制台 。​
  1. 在左侧导航栏,单击 策略管理。​
  1. 在 策略管理 页面,单击 新建自定义策略 。​
  1. 在 新建自定义策略 对话框,根据下文的示例代码创建策略 custom-cr-for-project。​
  • ​alt​​
  • ​
    {​
    "Statement": [​
    {​
    "Effect": "Allow",​
    "Action": [​
    "cr:List*",​
    "cr:Get*",​
    "cr:Pull*",​
    "cr:Push*"​
    ],​
    "Resource": [​
    "trn:cr:*:*:instance/instance-a", ​
    "trn:cr:*:*:repository/instance-a/library", ​
    "trn:cr:*:*:repository/instance-a/library/*"​
    ]​
    }​
    ]​
    }​
    ​
  1. 单击 提交,完成创建。​
  1. 在创建成功页面,单击 添加授权。​
  1. 选择 custom-cr-for-project策略和 cr-demo-project 项目。​
  • ​alt​​
  1. 单击 确定,完成授权。​
​
最近更新时间:2025.11.13 10:37:23
这个页面对您有帮助吗?
有用
有用
无用
无用