如果RAM提供的系统策略无法满足您的业务需求,您可以通过创建自定义策略对PolarDB-X 1.0进行精细化权限管理。

前提条件

背景信息

  • 权限策略是用语法结构描述的一组权限的集合,可以精确地描述被授权的资源集、操作集以及授权条件,详细的语言规范请参见权限策略语法和结构
  • 使用自定义策略对PolarDB-X 1.0进行精细化权限管理前,请先了解的权限定义,详情请参见资源授权

使用限制

RAM子账户没有修改PolarDB-X 1.0数据库密码的权限。

步骤一:创建自定义权限策略

  1. 云账号登录RAM控制台
  2. 在左侧导航栏,单击权限管理 > 权限策略管理
  3. 单击创建权限策略
  4. 在弹出的对话框中,配置自定义策略信息。
    新建自定义策略
    配置 说明
    策略名称 建议填入具备业务意义的名称以便后续识别。
    备注(可选) 填入该策略的备注信息。
    配置模式 PolarDB-X 1.0仅支持脚本配置,此处选择为脚本配置
    策略内容 下拉选择系统已有的策略,将其导入至本策略中。
    说明 本案例介绍自定义策略,此选项无需配置。
    权限策略框 填入具体的权限策略信息,表格下方为您列出了一些常见的自定义权限策略供您参考。
    说明
    • 权限策略是用语法结构描述的一组权限的集合,可以精确地描述被授权的资源集、操作集以及授权条件,详细的语言规范请参见权限策略语法和结构
    • 当前支持资源(Resource)和操作(Action)级别的授权。

    常见的自定义权限策略:

    说明
    • 请将下述代码中的1234替换成RAM子账号所对应的主账号的uid。
    • 请将下述代码中目标实例ID的替换为真实的PolarDB-X 1.0实例ID。
    • 允许目标RAM子账户操作PolarDB-X 1.0控制台。
      {
        "Version": "1",
        "Statement": [
            {
                 "Action": "drds:*",
                "Resource": "acs:drds:*:1234:instance/*",
                "Effect": "Allow"
            },
            {
                  "Action": "ram:PassRole",
                "Resource": "*",
                "Effect": "Allow"
            }
        ]
      }
    • 仅允许目标RAM子账号访问华东1(杭州)地域下的所有PolarDB-X 1.0实例。

      {
        "Version": "1",
        "Statement": [
            {
                "Action": "drds:*",
                "Resource": "acs:drds:cn-hangzhou:1234:instance/*",
                "Effect": "Allow"
            },
            {
                "Action": "ram:PassRole",
                "Resource": "*",
                "Effect": "Allow"
            }
        ]
      }       
    • 不允许目标RAM子账号访问特定实例。
      {
        "Version": "1",
        "Statement": [
            {
                "Action": "drds:*",
                "Resource": "acs:drds:*:1234:instance/*",
                "Effect": "Allow"
            },
            {
                "Action": "drds:*",
                "Resource": [
                    "acs:drds:*:1234:instance/目标实例ID",
                ],
                "Effect": "Deny"
            },
            {
                "Action": "ram:PassRole",
                "Resource": "*",
                "Effect": "Allow"
            }
        ]
      }            
      说明 被授予该策略的RAM子账户可以访问主账号下除目标实例ID之外的所有PolarDB-X 1.0实例。
  5. 单击确定

步骤二:为RAM用户授权自定义策略

  1. 登录RAM控制台
  2. 在左侧导航栏单击授权管理 > 权限策略管理
  3. 权限策略管理页,找到目标自定义权限策略,单击权限策略名称。
    找到名称
  4. 在目标权限策略的基本信息页,单击引用记录页签。
  5. 单击新增授权,在弹出的对话框中,设置以下参数。
    参数 说明
    授权范围 您可以选择授权范围云账号全部资源指定资源组
    被授权主体 您可以在搜索框内输入目标RAM用户、用户组或RAM角色名称进行模糊搜索,并在搜索结果中选择目标RAM用户。
    选择权限 目标自定义权限策略默认已加入右侧已选择框中,若您还需为目标RAM用户添加其他权限,可在左边待选框中选中对应的权限策略名称加入右侧已选择框。
    说明 每次最多添加5条策略,如需添加更多策略,请分多次进行。
  6. 单击确定
    说明 更多为RAM用户或用户组授权的方式,请参见为RAM用户授权为用户组授权