本文介绍如何在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"
}
]
}