控制台示例

最近更新时间:2021-09-23 11:36:45

云数据库访问管理策略示例

您可以通过使用 CAM 策略让用户拥有在云数据库控制台中查看和使用特定资源的权限。该部分的示例能够使用户使用控制台的特定部分的策略。

说明:

由于历史原因,TDSQL MySQL版 在访问管理的接口关键词为 dcdb。

创建自定义策略语法

  1. 进入 策略语法 配置页面,单击新建自定义策略
  2. 在弹出的对话框,选择按策略语法创建
  3. 选择空白模板并单击下一步
  4. 填入对应的策略语法。

关联子账号/协作者并验证

创建策略完成后,选择关联用户/组。关联完成后,更换浏览器(或主机),通过使用子账号/协作者验证验证是否正常。如果策略语法写作无误,您可以观察到:

  • 您能正常访问预期目标产品和资源,并拥有预期的全部功能。
  • 访问其他未授权产品或资源时提示“您没有权限执行此操作”。
说明:

为避免多个策略语法影响,建议一次只让子账号关联一个策略。
修改某账号访问控制权限后,预估会有1分钟以内的延迟。

附录:常用的策略语法

放通云数据库的全部实例全部功能策略

如果您想让用户拥有创建和管理云数据库实例的权限,您可以对该用户使用名称为 QcloudDCDBFullAccess 的策略。
策略语法如下:

{
    "version": "2.0",
    "statement": [
        {
            "action": [
                "dcdb:*"
            ],
            "resource": "*",
            "effect": "allow"
        }
    ]
}

云数据库全部实例仅查询功能策略

如果您只想让用户拥有查询云数据库实例的权限,但是不具有创建、删除和修改的权限,您可以对该用户使用名称为QcloudDCDBInnerReadOnlyAccess 的策略。

策略语法如下:

{
    "version": "2.0",
    "statement": [
        {
            "action": [
                "dcdb:Describe*"
            ],
            "resource": "*",
            "effect": "allow"
        }
    ]
}
以上策略是通过让用户分别对云数据库中所有以单词" Describe "开头的所有操作进行 CAM 策略授权来达到目的。

说明:

由于目前并未涵盖全部功能 API 接口,您可能会观察到少量操作并未纳入 CAM 管理,这属于正常现象。

授权用户拥有特定地域云数据库的操作权限策略

如果您想要授权用户拥有特定地域的云数据库的操作权限,可将以下策略关联到该用户。以下策略允许用户拥有对广州地域的云数据库机器的操作权限。

{
    "version": "2.0",
    "statement": [
        {
            "action": "dcdb:*",
            "resource": "qcs::dcdb:ap-guangzhou::*",
            "effect": "allow"
        }
    ]
}

授权用户拥有若干特定地域云数据库的操作权限策略

如果您想要授权用户拥有特定地域的云数据库的操作权限,可将以下策略关联到该用户。以下策略允许用户拥有对广州成都地域的云数据库机器的操作权限。

{
    "version": "2.0",
    "statement": [
        {
            "action": "dcdb:*",
            "resource": "qcs::dcdb:ap-guangzhou::*","qcs::dcdb:ap-chengdu::*",
            "effect": "allow"
        }
    ]
}

授权用户拥有特定云数据库的操作权限策略

如果您想要授权用户拥有特定云数据库操作权限,可将以下策略关联到该用户。以下策略允许用户拥有对 ID 为 dcdb-xxx,广州地域的云数据库实例的操作权限:

{
    "version": "2.0",
    "statement": [
        {
            "action": [
                "dcdb:*"
            ],
            "resource": "qcs::dcdb:ap-guangzhou::instance/dcdb-xxx",
            "effect": "allow"
        }
    ]
}

授权用户拥有若干云数据库的操作权限策略

如果您想要授权用户拥有批量云数据库操作权限,可将以下策略关联到该用户。以下策略允许用户拥有对 ID 为 dcdb-xxx、dcdb-yyy 广州地域的云数据库实例的操作权限,和对 ID 为 dcdb-zzz 北京地域的云数据库实例的操作权限。

{
    "version": "2.0",
    "statement": [
        {
            "action": "dcdb:*",
            "resource": ["qcs::dcdb:ap-guangzhou::instance/dcdb-xxx", "qcs::dcdb:ap-guangzhou::instance/dcdb-yyy", "qcs::dcdb:ap-beijing::instance/dcdb-zzz"],
            "effect": "allow"
        }
    ]
}

授权用户拥有若干云数据库的若干操作权限策略

如果您想要授权用户拥有批量云数据库操作权限,可将以下策略关联到该用户。以下策略允许用户拥有对 ID 为 dcdb-xxx、dcdb-yyy 广州地域的云数据库实例的若干操作权限,和对 ID 为 dcdb-zzz 北京地域的云数据库实例的若干操作权限。

{
    "version": "2.0",
    "statement": [
        {
            "action": "dcdb:Describe*","dcdb:Create*",
            "resource": ["qcs::dcdb:ap-guangzhou::instance/dcdb-xxx", "qcs::dcdb:ap-guangzhou::instance/dcdb-yyy", "qcs::dcdb:ap-beijing::instance/dcdb-zzz"],
            "effect": "allow"
        }
    ]
}

拒绝用户拥有云数据库的创建账号权限

如果您想要拒绝某用户拥有云数据库的创建账号权限,即配置"effect": "deny"

{
    "version": "2.0",
    "statement": [
        {
            "action": "dcdb:CreateAccount",
            "resource": "*",
            "effect": "deny"
        }
    ]
}

其他自定义策略

如果您觉得预设策略不能满足您所想要的要求,您也可以创建自定义策略。自定义的策略语法如下:

{
    "version": "2.0",
    "statement": [
        {
            "action": [
                "Action"
            ],
            "resource": "Resource",
            "effect": "Effect"
        }
    ]
}

  • Action 中换成您要进行允许或拒绝的操作。
  • Resource 中换成您要授权的具体资源。
  • Effect 中换成允许或者拒绝。
目录