服务关联角色

本文为您介绍资源编排的服务关联角色(AliyunServiceRoleForROSStackGroupsRDAdmin和AliyunServiceRoleForROSStackGroupsRDMember)。

什么是服务关联角色

服务关联角色是一种可信实体为阿里云服务的RAM角色。资源编排使用服务关联角色获取其他云服务或云资源的访问权限。

通常情况下,服务关联角色是在您执行某项操作时,由系统自动创建。在自动创建服务关联角色失败或资源编排不支持自动创建时,您需要手动创建服务关联角色。

阿里云访问控制为每个服务关联角色提供了一个系统权限策略,该策略不支持修改。如果您想了解该系统策略的具体内容,可前往指定服务关联角色的详情页面查看。详情请参见系统策略参考

应用场景

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

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

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:ListPolicyAttachments",
            "ram:DetachPolicy"
          ],
          "Effect": "Allow",
          "Resource": [
            "acs:ram:*:*:*"
          ]
        },
        {
          "Action": "ram:DeleteServiceLinkedRole",
          "Resource": "*",
          "Effect": "Allow",
          "Condition": {
            "StringEquals": {
              "ram:ServiceName": "stackgroups-member.ros.aliyuncs.com"
            }
          }
        }
      ],
      "Version": "1"
    }

创建服务关联角色

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

具体操作,请参见步骤三:创建资源栈组

查看服务关联角色

当服务关联角色创建成功后,您可以在RAM控制台的角色页面,通过搜索AliyunServiceRoleForROSStackGroupsRDAdmin和AliyunServiceRoleForROSStackGroupsRDMember查看该服务关联角色的以下信息:

  • 基本信息

    在AliyunServiceRoleForROSStackGroupsRDAdmin和AliyunServiceRoleForROSStackGroupsRDMember角色详情页面的基本信息区域,查看角色基本信息,包括角色名称、创建时间、角色ARN和备注等。

  • 权限策略

    在AliyunServiceRoleForROSStackGroupsRDAdmin和AliyunServiceRoleForROSStackGroupsRDMember角色详情页面的权限管理页签,单击权限策略名称,查看权限策略内容以及该角色可授权访问哪些云资源。

  • 信任策略

    在AliyunServiceRoleForROSStackGroupsRDAdmin和AliyunServiceRoleForROSStackGroupsRDMember角色详情页的信任策略管理页签,查看信任策略内容。信任策略是描述RAM角色可信实体的策略,可信实体是指可以扮演RAM角色的实体用户身份。服务关联角色的可信实体为云服务,您可以通过信任策略中的Service字段查看。

关于如何查看服务关联角色的详细操作,请参见查看RAM角色

删除服务关联角色

如果您需要删除管理员账号中的ROS服务关联角色(AliyunServiceRoleForROSStackGroupsRDAdmin),需要先删除管理员账号中所有具有服务管理权限的资源栈组。

如果您需要删除成员账号中的ROS服务关联角色(AliyunServiceRoleForROSStackGroupsRDMember),需要先删除与此成员账号相关的资源栈实例。

  1. 登录RAM控制台

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

  3. 角色页面,单击目标RAM角色操作列的删除角色

  4. 删除角色对话框,输入RAM角色名称,然后单击删除角色

    如果RAM角色被授予了权限策略,删除角色时,会同时解除授权。

    对于删除失败的任务,您可以在角色列表的右上方,单击角色删除任务,查看详情。