当一个企业希望将部分业务授权给另一个企业时,可以使用RAM角色进行跨云账号授权来管理资源的授权及访问。

前提条件

进行操作前,请确保您已经注册了阿里云账号。如还未注册,请先完成账号注册

背景信息

企业A购买了多种阿里云资源来开展业务,例如:ECS实例、RDS实例、SLB实例和OSS存储空间等。企业A希望将部分业务授权给企业B。

企业A有如下要求:

  • 企业A希望能专注于业务系统,仅作为资源Owner。企业A希望可以授权账号B来操作部分业务,例如:云资源运维、监控以及管理等。
  • 企业A希望当企业B的员工加入或离职时,无需做任何权限变更。企业B可以进一步将企业A的资源访问权限分配给企业B的RAM用户(员工或应用),并可以精细控制其员工或应用对资源的访问和操作权限。
  • 企业A希望如果双方合同终止,企业A随时可以撤销企业B的授权。

解决方案

企业A需要授权企业B的员工对ECS进行操作。假设企业A和企业B下分别有一个云账号A和云账号B。

  • 企业A的云账号ID为:123456789012****,账号别名为:company-a
  • 企业B的云账号ID为:134567890123****,账号别名为:company-b
  1. 云账号A创建一个RAM角色,并为RAM角色授予合适的权限,允许云账号B使用该角色。

    操作流程请参见跨云账号授权

  2. 如果云账号B下的某个员工(RAM用户)需要使用该RAM角色,那么云账号B可以自主进行授权控制。云账号B下的RAM用户将扮演RAM角色来操作云账号A的资源。

    操作流程请参见跨云账号访问资源

  3. 如果企业A与企业B的合作终止,企业A只需要撤销云账号B对RAM角色的使用。此时云账号B下的所有RAM用户对RAM角色的使用权限将被自动撤销。

    操作流程请参见撤销跨云账号授权

跨云账号授权


跨云账号授权
  1. 云账号A创建可信实体为阿里云账号的RAM角色ecs-admin
    说明 创建RAM角色时选择其他云账号134567890123****作为受信云账号,即允许云账号B下的RAM用户来扮演该RAM角色。

    关于如何创建RAM角色,详情请参见创建可信实体为阿里云账号的RAM角色

    RAM角色创建成功后,在角色基本信息页面中可以查看到该RAM角色的ARN和信任策略。

    • RAM角色的ARN : acs:ram::123456789012****:role/ecs-admin
    • RAM角色的信任策略如下:
      说明 以下策略表示允许云账号B下的RAM用户来扮演该RAM角色。
      {
      "Statement": [
      {
       "Action": "sts:AssumeRole",
       "Effect": "Allow",
       "Principal": {
         "RAM": [
           "acs:ram::134567890123****:root"
         ]
       }
      }
      ],
      "Version": "1"
      }
  2. 云账号A为RAM角色ecs-admin添加AliyunECSFullAccess权限。

    关于如何为RAM角色授权,请参见为RAM角色授权

  3. 云账号B为其员工创建RAM用户:Alice

    关于如何创建RAM用户,请参见创建RAM用户

  4. 云账号B为创建好的RAM用户设置登录密码:123456****并添加AliyunSTSAssumeRoleAccess权限,即允许RAM用户扮演RAM角色。

    关于如何为RAM用户授权,请参见为RAM用户授权

跨云账号访问资源

对云账号B的RAM用户Alice进行授权后,RAM用户通过切换角色便可以访问云账号A下的ECS资源。

  1. 云账号B的RAM用户登录RAM控制台
    说明 RAM用户登录时需要输入账号别名:company-b,RAM用户名称:Alice和RAM用户密码:123456****

    关于RAM用户如何登录控制台,请参见RAM用户登录控制台

  2. RAM用户登录成功后,将鼠标悬停在右上角头像的位置,单击切换身份
    说明 切换角色时需要输入账号别名:company-a和RAM角色名称:ecs-admin

    关于如何切换角色,详情请参见使用RAM角色

撤销跨云账号授权

云账号A可以撤销云账号B对RAM角色ecs-admin的使用。

  1. 云账号A登录RAM控制台
  2. 在左侧导航栏,单击RAM角色管理
  3. 单击RAM角色名称ecs-admin
  4. 信任策略管理页签下,单击修改信任策略,删除整行策略内容"acs:ram::134567890123****:root"
    说明 云账号A也可以通过删除RAM角色ecs-admin来撤销云账号B的权限。但在删除RAM角色前,请先为RAM角色移除权限。详情请参见为RAM角色移除权限