本文为您介绍资源编排服务ROS(Resource Orchestration Service)的服务关联角色(AliyunServiceRoleForROSStackGroupsRDAdmin和AliyunServiceRoleForROSStackGroupsRDMember)的应用场景、权限策略及相关操作。

应用场景

ROS服务关联角色(AliyunServiceRoleForROSStackGroupsRDAdmin和AliyunServiceRoleForROSStackGroupsRDMember)是在使用具有服务管理权限模式的资源栈组情况下,为了获取管理员账号下的资源目录账号和对成员账号部署资源栈,需要获取其他云服务的访问权限,而提供的RAM角色。

关于服务关联角色的更多信息,请参见服务关联角色

权限说明

  • AliyunServiceRoleForROSStackGroupsRDAdmin

    权限策略:AliyunServiceRolePolicyForROSStackGroupsRDAdmin。

    权限说明:ROS使用此角色来获取资源目录的账号信息。

    {
      "Statement": [
        {
          "Action": [
            "resourcemanager:ListAccountsForParent",
            "resourcemanager:ListFoldersForParent",
            "resourcemanager:ListAncestors"
          ],
          "Effect": "Allow",
          "Resource": "*"
        },
        {
          "Effect": "Allow",
          "Action": "sts:AssumeRole",
          "Resource": "acs:ram:*:*:role/stackgroups-exec-*"
        },
        {
          "Action": "ram:DeleteServiceLinkedRole",
          "Resource": "*",
          "Effect": "Allow",
          "Condition": {
            "StringEquals": {
              "ram:ServiceName": "stackgroups-admin.ros.aliyuncs.com"
            }
          }
        }
      ],
      "Version": "1
  • AliyunServiceRoleForROSStackGroupsRDMember

    权限策略:AliyunServiceRolePolicyForROSStackGroupsRDMember。

    权限内容:ROS使用此角色来动态创建stackgroups-exec-开头的RAM角色,并以此身份部署资源栈。

    {
      "Statement": [
        {
          "Action": [
              "ram:CreateRole",
              "ram:GetRole",
              "ram:DeleteRole"
            ],
          "Effect": "Allow",
          "Resource": "acs:ram:*:*:role/stackgroups-exec-*"
        },
        {
          "Action": [
              "ram:AttachPolicyToRole",
              "ram:DetachPolicyFromRole"
            ],
          "Effect": "Allow",
          "Resource": [
            "acs:ram:*:*:role/stackgroups-exec-*",
            "acs:ram:*:system:policy/AdministratorAccess"
          ]
        },
        {
          "Action": "ram:DeleteServiceLinkedRole",
          "Resource": "*",
          "Effect": "Allow",
          "Condition": {
            "StringEquals": {
              "ram:ServiceName": "stackgroups-member.ros.aliyuncs.com"
            }
          }
        }
      ],
      "Version": "1"
    }

创建服务关联角色

管理员账号在具有服务管理权限的资源栈组中,创建资源栈实例时,在管理员账号下创建服务关联角色AliyunServiceRoleForROSStackGroupsRDAdmin,以此身份获取资源目录下的账号信息。在获取到的所有成员账号中创建服务关联角色AliyunServiceRoleForROSStackGroupsRDMember,以此身份动态创建stackgroups-exec-开头的普通RAM角色,并以此身份部署资源栈。stackgroups-exec-开头的角色会在资源栈实例被成功删除时删除。

更多信息,请参见步骤三:创建资源栈组

删除服务关联角色

  • 如果您需要删除管理员账号中的ROS服务关联角色(AliyunServiceRoleForROSStackGroupsRDAdmin),需要先删除管理员账号中所有具有服务管理权限的资源栈组。
    1. 删除资源栈组。具体操作,请参见删除资源栈组
    2. 删除服务关联角色。具体操作,请参见删除服务关联角色
  • 如果您需要删除成员账号中的ROS服务关联角色(AliyunServiceRoleForROSStackGroupsRDMember),需要先删除与此成员账号相关的资源栈实例。
    1. 删除资源栈实例。具体操作,请参见单个删除资源栈实例
    2. 删除服务关联角色。具体操作,请参见删除服务关联角色