服务关联角色

本文为您介绍RDS服务关联角色的应用场景以及如何删除服务关联角色。

背景信息

RDS当前支持的服务关联角色:

  • RDS MySQL服务关联角色(AliyunServiceRoleForRds)

  • RDS PostgreSQL服务关联角色(AliyunServiceRoleForRdsPgsqlOnEcs)

  • RDS PostgreSQL Proxy数据库代理服务关联角色(AliyunServiceRoleForRDSProxyOnEcs)

服务关联角色是在某些情况下,为了完成RDS自身的某个功能,需要获取其他云服务的访问权限,而提供的RAM角色。更多关于服务关联角色的信息请参见服务关联角色

服务关联角色介绍

AliyunServiceRoleForRds

角色名称

AliyunServiceRoleForRds

角色权限策略

AliyunServiceRolePolicyForRds

权限详情

AliyunServiceRoleForRds策略内容

{
    "Version": "1",
    "Statement": [
        {
            "Action": [
                "ecs:CreateNetworkInterface",
                "ecs:DeleteNetworkInterface",
                "ecs:AttachNetworkInterface",
                "ecs:DetachNetworkInterface",
                "ecs:DescribeNetworkInterfaces",
                "ecs:CreateNetworkInterfacePermission",
                "ecs:DescribeNetworkInterfacePermissions",
                "ecs:CreateSecurityGroup",
                "ecs:DeleteSecurityGroup",
                "ecs:DescribeSecurityGroupAttribute",
                "ecs:DescribeSecurityGroups",
                "ecs:ModifySecurityGroupAttribute",
                "ecs:AuthorizeSecurityGroup",
                "ecs:AuthorizeSecurityGroupEgress",
                "ecs:RevokeSecurityGroup",
                "ecs:RevokeSecurityGroupEgress",
                "ecs:DescribeKeyPairs",
                "ecs:ModifyImageSharePermission",
                "ecs:DescribeImages"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "vpc:DescribeVSwitches",
                "vpc:AssociateEipAddress",
                "vpc:DescribeVpcs"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": "ram:DeleteServiceLinkedRole",
            "Resource": "*",
            "Effect": "Allow",
            "Condition": {
                "StringEquals": {
                    "ram:ServiceName": "rds-ecs-service.rds.aliyuncs.com"
                }
            }
        }
    ]
}

创建角色

该角色用于RDS MySQL数据库授权,您可以在创建数据库时,根据控制台提示进行创建,更多信息,请参见创建数据库

删除角色

如果您需要删除服务关联角色,需要先删除依赖这个服务角色的所有数据库。

  1. 删除RDS MySQL数据库具体操作请参见删除数据库

  2. 删除服务关联角色具体操作请参见删除服务关联角色

AliyunServiceRoleForRdsPgsqlOnEcs

角色名称

AliyunServiceRoleForRdsPgsqlOnEcs

角色权限策略

AliyunServiceRolePolicyForRdsPgsqlOnEcs

权限详情

AliyunServiceRoleForRdsPgsqlOnEcs策略内容

{
    "Version": "1",
    "Statement": [
        {
            "Action": [
                "ecs:CreateNetworkInterface",
                "ecs:DeleteNetworkInterface",
                "ecs:AttachNetworkInterface",
                "ecs:DetachNetworkInterface",
                "ecs:DescribeNetworkInterfaces",
                "ecs:CreateNetworkInterfacePermission",
                "ecs:DescribeNetworkInterfacePermissions",
                "ecs:CreateSecurityGroup",
                "ecs:DeleteSecurityGroup",
                "ecs:DescribeSecurityGroupAttribute",
                "ecs:DescribeSecurityGroups",
                "ecs:ModifySecurityGroupAttribute",
                "ecs:AuthorizeSecurityGroup",
                "ecs:AuthorizeSecurityGroupEgress",
                "ecs:RevokeSecurityGroup",
                "ecs:RevokeSecurityGroupEgress"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "kms:Listkeys",
                "kms:Listaliases",
                "kms:ListResourceTags",
                "kms:DescribeKey",
                "kms:UntagResource",
                "kms:TagResource",
                "kms:DescribeAccountKmsStatus"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "kms:Encrypt",
                "kms:Decrypt",
                "kms:GenerateDataKey"
            ],
            "Resource": "*",
            "Effect": "Allow",
            "Condition": {
                "StringEqualsIgnoreCase": {
                    "kms:tag/acs:rds:instance-encryption": "true"
                }
            }
        },
        {
            "Action": [
                "vpc:DescribeVSwitches",
                "vpc:DescribeVpcs"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": "ram:DeleteServiceLinkedRole",
            "Resource": "*",
            "Effect": "Allow",
            "Condition": {
                "StringEquals": {
                    "ram:ServiceName": "pgsql-onecs.rds.aliyuncs.com"
                }
            }
        }
    ]
}

创建角色

  1. 登录RAM控制台

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

  3. 单击创建角色

  4. 创建角色向导的选择类型步骤中,选择阿里云服务,然后单击下一步

  5. 配置角色步骤中,角色类型选择服务关联角色选择云服务配置为云关系型数据库 Postgresql-OnEcs,然后单击完成

    image..png

删除角色

如果您需要删除服务关联角色,需要先释放依赖这个服务角色的所有实例。

  1. 释放RDS PostgreSQL版实例具体操作请参见释放实例

  2. 删除服务关联角色具体操作请参见删除服务关联角色

AliyunServiceRoleForRDSProxyOnEcs

角色名称

AliyunServiceRoleForRDSProxyOnEcs

角色权限策略

AliyunServiceRolePolicyForRDSProxyOnEcs

权限详情

AliyunServiceRoleForRDSProxyOnEcs策略内容

{
    "Version": "1",
    "Statement": [
        {
            "Action": [
                "ecs:CreateNetworkInterface",
                "ecs:DeleteNetworkInterface",
                "ecs:AttachNetworkInterface",
                "ecs:DetachNetworkInterface",
                "ecs:DescribeNetworkInterfaces",
                "ecs:CreateNetworkInterfacePermission",
                "ecs:DescribeNetworkInterfacePermissions",
                "ecs:CreateSecurityGroup",
                "ecs:DeleteSecurityGroup",
                "ecs:DescribeSecurityGroupAttribute",
                "ecs:DescribeSecurityGroups",
                "ecs:ModifySecurityGroupAttribute",
                "ecs:AuthorizeSecurityGroup",
                "ecs:AuthorizeSecurityGroupEgress",
                "ecs:RevokeSecurityGroup",
                "ecs:RevokeSecurityGroupEgress"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "vpc:DescribeVSwitches",
                "vpc:DescribeVpcs"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": "ram:DeleteServiceLinkedRole",
            "Resource": "*",
            "Effect": "Allow",
            "Condition": {
                "StringEquals": {
                    "ram:ServiceName": "rdsproxy-onecs.rds.aliyuncs.com"
                }
            }
        }
    ]
}

创建角色

该角色用于RDS PostgreSQL数据库代理授权,您可以在创建数据库代理时,根据控制台提示进行创建,更多信息,请参见开通数据库代理

删除角色

如果您需要删除服务关联角色,需要先关闭依赖这个服务角色的所有数据库代理。

  1. 关闭RDS PostgreSQL数据库代理的具体操作请参见关闭数据库代理

  2. 删除服务关联角色具体操作请参见删除服务关联角色

相关OpenAPI

您可以调用CreateServiceLinkedRole接口创建RDS实例的服务关联角色。需要配置的参数如下:

参数

说明

示例值

RegionId

地域ID,您可以通过DescribeRegions接口查看可用的地域ID。

cn-hangzhou

ServiceLinkedRole

服务关联角色。

  • AliyunServiceRoleForRds:RDS MySQL服务关联角色

  • AliyunServiceRoleForRdsPgsqlOnEcs:RDS PostgreSQL服务关联角色

  • AliyunServiceRoleForRDSProxyOnEcs:RDS PostgreSQL Proxy数据库代理服务关联角色

AliyunServiceRoleForRdsPgsqlOnEcs