跨云账号授权

使用企业A的阿里云账号(主账号)创建RAM角色并为该角色授权,并将该角色赋予企业B,即可实现使用企业B的主账号或其RAM用户(子账号)访问企业A的阿里云资源的目的。

背景信息

假设企业A购买了多种云资源来开展业务,并需要授权企业B代为开展部分业务,则可以利用RAM角色来实现此目的。RAM角色是一种虚拟用户,没有确定的身份认证密钥,需要被一个受信的实体用户扮演才能正常使用。为了满足企业A的需求,可以按照以下流程操作:

  1. 企业A创建RAM角色
  2. 企业A为该RAM角色添加权限
  3. 企业B创建RAM用户
  4. 企业B为RAM用户添加AliyunSTSAssumeRoleAccess权限
  5. 企业B的RAM用户通过控制台或API访问企业A的资源

可以为RAM角色添加的AHAS权限策略为:

  • AliyunAHASFullAccess:AHAS的完整权限。

  • AliyunAHASReadOnlyAccess:AHAS的只读权限。

步骤一:企业A创建RAM角色

首先需要使用企业A的阿里云账号登录RAM控制台并创建RAM角色。

  1. 使用RAM管理员登录RAM控制台

  2. 在左侧导航栏,选择身份管理 > 角色

  3. 角色页面,单击创建角色

    image

  4. 创建角色页面,选择可信实体类型为阿里云账号,然后单击下一步

    image

  5. 设置角色信息。

    1. 输入角色名称

    2. 输入备注

    3. 选择云账号。这里选择信任的云账号为其他云账号,并在文本框内输入企业B的阿里云账号ID。

      • 当前云账号:当您允许当前阿里云账号下的所有RAM用户扮演该RAM角色时,您可以选择当前云账号

      • 其他云账号:当您允许其他阿里云账号下的所有RAM用户扮演该RAM角色时,您可以选择其他云账号,然后输入其他阿里云账号(主账号)ID。该项主要针对跨阿里云账号的资源授权访问场景,相关教程,请参见跨阿里云账号的资源授权

        您可以在安全设置页面查看阿里云账号(主账号)ID。

      重要

      如果您仅允许指定的RAM用户扮演该RAM角色,而不是阿里云账号(主账号)下的所有RAM用户,您可以采取以下两种方式:

  6. 单击完成

  7. 单击关闭

步骤二:企业A为该RAM角色添加权限

新创建的角色没有任何权限,因此企业A需要为该角色添加权限。

  1. 使用RAM管理员登录RAM控制台

  2. 在左侧导航栏,选择身份管理 > 角色

  3. 角色页面,单击目标RAM角色操作列的新增授权

    image

    您也可以选中多个RAM角色,单击角色列表下方的新增授权,为RAM角色批量授权。

  4. 添加权限面板,为RAM角色添加权限。

    1. 选择资源范围。

      • 账号级别:权限在当前阿里云账号内生效。

      • 资源组级别:权限在指定的资源组内生效。

        说明

        指定资源组授权生效的前提是该云服务及资源类型已支持资源组,详情请参见支持资源组的云服务

    2. 选择授权主体。

      授权主体即需要添加权限的RAM角色。系统会自动选择当前的RAM角色。

    3. 选择权限策略。这里选择添加AliyunAHASFullAccess权限,即AHAS的完整权限。

    4. 单击确认新增授权

  5. 单击关闭

步骤三:企业B创建RAM用户

接下来要使用企业B的阿里云账号登录RAM控制台并创建RAM用户。

操作步骤

  1. 使用阿里云账号(主账号)或RAM管理员登录RAM控制台

  2. 在左侧导航栏,选择身份管理 > 用户

  3. 用户页面,单击创建用户

    image

  4. 创建用户页面的用户账号信息区域,设置用户基本信息。

    • 登录名称:可包含英文字母、数字、半角句号(.)、短划线(-)和下划线(_),最多64个字符。

    • 显示名称:最多包含128个字符或汉字。

    • 标签:单击edit,然后输入标签键和标签值。为RAM用户绑定标签,便于后续基于标签的用户管理。

    说明

    单击添加用户,可以批量创建多个RAM用户。

  5. 访问方式区域,选择访问方式,然后设置对应参数。

    为了账号安全,建议您只选择以下访问方式中的一种,将人员用户和应用程序用户分离,避免混用。

    • 控制台访问

      如果RAM用户代表人员,建议启用控制台访问,使用用户名和登录密码访问阿里云。您需要设置以下参数:

      • 控制台登录密码:选择自动生成密码或者自定义密码。自定义登录密码时,密码必须满足密码复杂度规则。更多信息,请参见设置RAM用户密码强度

      • 密码重置策略:选择RAM用户在下次登录时是否需要重置密码。

      • 多因素认证(MFA)策略:选择是否为当前RAM用户启用MFA。启用MFA后,还需要绑定MFA设备。更多信息,请参见为RAM用户绑定MFA设备

    • 使用永久AccessKey访问

      如果RAM用户代表应用程序,您可以使用永久访问密钥(AccessKey)访问阿里云。启用后,系统会自动为RAM用户生成一个AccessKey ID和AccessKey Secret。更多信息,请参见创建AccessKey

      重要
      • RAM用户的AccessKey Secret只在创建时显示,不支持查看,请妥善保管。

      • 访问密钥(AccessKey)是一种长期有效的程序访问凭证。AccessKey泄露会威胁该账号下所有资源的安全。建议优先采用STS Token临时凭证方案,降低凭证泄露的风险。更多信息,请参见使用访问凭据访问阿里云OpenAPI最佳实践

  6. 单击确定

  7. 根据界面提示,完成安全验证。

步骤四:企业B为RAM用户添加权限

企业B必须为其阿里云账号下的RAM用户添加AliyunSTSAssumeRoleAccess权限,RAM用户才能扮演企业A创建的RAM角色。

  1. 使用RAM管理员登录RAM控制台

  2. 在左侧导航栏,选择身份管理 > 用户

  3. 用户页面,单击目标RAM用户操作列的添加权限

    image

  4. 新增授权面板,为RAM用户添加权限。

    1. 选择资源范围。

    2. 选择授权主体。

      授权主体即需要添加权限的RAM用户。系统会自动选择当前的RAM用户。

    3. 在筛选权限策略搜索框内,输入AliyunSTSAssumeRoleAccess并点击image图标搜索,选择AliyunSTSAssumeRoleAccess权限。

    4. 单击确认新增授权

  5. 单击关闭

步骤五:使用RAM用户登录控制台

完成上述操作后,企业B的RAM用户即可按照以下步骤登录控制台访问企业A的云资源。操作步骤如下:

  1. RAM用户访问阿里云控制台

  2. RAM用户名密码登录页签,输入RAM用户名,单击下一步

    image

    • 方式一:使用默认域名登录。RAM用户的登录格式为<UserName>@<AccountAlias>.onaliyun.com,例如:username@company-alias.onaliyun.com。

      说明

      <UserName>为RAM用户名称,<AccountAlias>.onaliyun.com为默认域名。关于默认域名的更多信息,请参见基本概念查看和修改默认域名

    • 方式二:使用账号别名登录。RAM用户的登录格式为<UserName>@<AccountAlias>,例如:username@company-alias。

      说明

      <UserName>为RAM用户名称,<AccountAlias>为账号别名。关于账号别名的更多信息,请参见基本概念查看和修改默认域名

    • 方式三:如果创建了域别名,也可以使用域别名登录。RAM用户的登录格式为<UserName>@<DomainAlias>,例如:username@example.com。

      说明

      <UserName>为RAM用户名称,<DomainAlias>为域别名。关于域别名的更多信息,请参见基本概念创建并验证域别名

  3. (可选)如果您开启了多因素认证(MFA),还需要进行MFA验证。

  4. 输入RAM用户的登录密码,然后单击登录

  5. 在RAM用户中心页面上将鼠标指针移动到右上角头像,并在浮层中单击切换身份

    说明

    若您目前使用的是RAM用户,请联系阿里云账号使用者为您添加相关权限。

  6. 阿里云-角色切换页面,输入企业A的企业别名默认域名,以及角色名,然后单击切换

  7. 对企业A的阿里云资源执行操作。