SAE通过RAM角色扮演的方式达到跨账号拉取阿里云镜像的目的,即用户A扮演用户B的角色拉取用户B的私有镜像。本文介绍跨账号拉取阿里云镜像的操作步骤。

操作步骤

  1. 创建用户B的受信实体为阿里云账号类型的RAM角色,并确保该RAM角色拥有拉取用户B私有镜像的权限。
    1. 登录RAM控制台,创建RAM角色。具体操作,请参见创建可信实体为阿里云账号的RAM角色
    2. 自定义RAM角色权限策略内容,确保该RAM角色拥有拉取用户B私有镜像的权限。具体操作,请参见修改自定义策略内容
      注意 请确保该RAM角色有cr.*的相关权限。

      策略中添加字段的位置如下所示。

      自定义策略添加位置

      需要添加的相关权限如下。

      {
      "Action": [
       "cr:GetAuthorizationToken",
       "cr:ListInstanceEndpoint",
       "cr:PullRepository"
      ],
      "Resource": [
      "*"
      ],
      "Effect": "Allow"
      }
  2. 在创建的用户B的RAM角色上配置信任策略,允许用户A账号对应的SAE服务账号进行角色扮演。
    1. 登录RAM控制台
    2. 在左侧导航栏单击RAM角色管理,在RAM角色管理页面找到目标RAM角色,并单击RAM角色名称。
    3. 在RAM角色基本信息页面,单击信任策略管理页签,输入{A的uid}@sae.aliyuncs.com
      添加信任策略
  3. 创建和部署应用时选择跨账号拉取镜像,并输入acrAssumeRoleArn配置。

    关于创建和部署应用的具体操作,请参见在SAE控制台使用镜像部署应用

    应用部署配置页签,选择应用部署方式镜像,在配置镜像区域单击其他阿里云账号私有镜像,在acrAssumeRoleArn文本框输入用户B的Worker RAM角色的ARN。跨账号拉取阿里云镜像