本文介绍如何在PolarDB-X中使用RAM的账号体系及权限策略进行资源和权限控制。
使用限制
- RAM子帐户删除数据库与删除只读账户需要开启MFA多因素认证,详情请参见为云账号设置多因素认证。
- RAM子帐户没有修改PolarDB-X数据库密码的权限。
PolarDB-X控制台使用RAM
在PolarDB-X控制台使用RAM需要在RAM控制台进行如下操作:
在PolarDB-X上使用RAM账号系统前,请确保已经激活PolarDB-X对RDS的访问授权,创建了供PolarDB-X使用的RAM角色(role),详情请参见使用RAM的准备工作。
自定义策略示例
- 赋予某个子帐户对应的主账户所拥有的 DRDS 控制台操作权限:
{"Version":"1","Statement":[{"//":"1234 是子帐号对应的主帐号的 uid","Action":"drds:*","Resource":"acs:drds:*:1234:instance/*","Effect":"Allow"},{"//":"注意,为保证 RAM 功能的正常使用,请确保策略中存在下面这段","Action":"ram:PassRole","Resource":"*","Effect":"Allow"}]}
- 指定用户只可以访问杭州可用区下所有PolarDB-X的计算资源DRDS实例的权限:
{"Version":"1","Statement":[{"//":"1234 是子帐号对应的主帐号的 uid","Action":"drds:*","Resource":"acs:drds:cn-hangzhou:1234:instance/*","Effect":"Allow"},{"//":"注意,为保证 RAM 功能的正常使用,请确保策略中存在下面这段","Action":"ram:PassRole","Resource":"*","Effect":"Allow"}]}
- 指定用户无法访问特定的某个实例。被授予该策略的RAM子帐户可以访问除
drds******hb4之外的所有PolarDB-X的计算资源DRDS实例。:
{"Version":"1","Statement":[{"//":"1234 是子帐号对应的主帐号的 uid","Action":"drds:*","Resource":"acs:drds:*:1234:instance/*","Effect":"Allow"},{"Action":"drds:*","Resource":["acs:drds:*:1234:instance/drds******hb4","acs:drds:*:1234:instance/drds******hb4/*"],"Effect":"Deny"},{"//":"注意,为保证 RAM 功能的正常使用,请确保策略中存在下面这段","Action":"ram:PassRole","Resource":"*","Effect":"Allow"}]}