本文介绍了通过RAM的权限管理功能,创建相应的权限策略,从而对云数据库(RDS)进行权限管理,以满足RAM用户操作RDS的多种需求。
背景信息
使用RAM对RDS进行权限管理前,请先了解以下系统策略:
AliyunRDSFullAccess:管理RDS的权限。
AliyunRDSReadOnlyAccess:只读访问RDS的权限。
当系统策略不能满足您的需要时,您可以创建自定义策略。
使用RAM对RDS进行权限管理前,请先了解RDS的权限定义。更多信息,请参见RAM资源授权。
操作步骤
权限策略示例
示例1:授权RAM用户管理2台指定的RDS实例。
假设您的账号购买了多个实例,而作为RAM管理员,您希望仅授权其中的2个实例给某个RAM用户。实例ID分别为rm-abcdxxxx001、rm-abcdxxxx002。
{ "Statement": [ { "Action": "rds:*", "Effect": "Allow", "Resource": [ "acs:rds:*:*:dbinstance/rm-abcdxxxx001", "acs:rds:*:*:dbinstance/rm-abcdxxxx002" ] }, { "Action": "rds:Describe*", "Effect": "Allow", "Resource": "*" } ], "Version": "1" }
说明授予该权限策略的RAM用户可以查看所有的实例及资源,但只能操作其中2个实例。
Describe*
在权限策略中是必须的,否则用户在控制台将无法看到任何实例,使用API、CLI或SDK直接对两个实例进行操作是可以的。
示例2:授权RAM用户访问DMS管理数据库内容。
授权RAM用户登录指定RDS:
{ "Statement": [ { "Action": "dms:LoginDatabase", "Effect": "Allow", "Resource": "acs:rds:*:*:dbinstance/rds783a0639ks5k7****" } ], "Version": "1" }
说明请将
rds783a0639ks5k7****
替换为您要授权的RDS实例ID。授权RAM用户登录所有RDS:
{ "Statement": [ { "Action": "dms:LoginDatabase", "Effect": "Allow", "Resource": "acs:rds:*:*:*" } ], "Version": "1" }