云数据库 OceanBase 自定义权限策略参考

如果系统权限策略不能满足您的要求,您可以创建自定义权限策略实现最小授权。使用自定义权限策略有助于实现权限的精细化管控,是提升资源访问安全的有效手段。本文介绍云数据库 OceanBase 使用自定义权限策略的场景和策略示例。

什么是自定义权限策略

在基于RAM的访问控制体系中,自定义权限策略是指在系统权限策略之外,您可以自主创建、更新和删除的权限策略。自定义权限策略的版本更新需由您来维护。

  • 创建自定义权限策略后,需为RAM用户、用户组或RAM角色绑定权限策略,这些RAM身份才能获得权限策略中指定的访问权限。

  • 已创建的权限策略支持删除,但删除前需确保该策略未被引用。如果该权限策略已被引用,您需要在该权限策略的引用记录中移除授权。

  • 自定义权限策略支持版本控制,您可以按照RAM规定的版本管理机制来管理您创建的自定义权限策略版本。

操作文档

自定义权限策略示例

为 RAM 用户授权指定 OceanBase 实例的只读权限

通过自定义标签的授权方式,为需要被授权的资源绑定同一标签,然后在创建权限策略时,使权限策略只被应用在绑定了指定标签的资源上,实现对绑定指定标签的所有资源的精准授权。

OceanBase 有专门的安全管理策略用来保证数据库数据安全和资源安全,详细内容请参见

创建权限策略。

  1. 登录 RAM控制台

  2. 在左侧导航栏选择 权限管理 > 权限策略

  3. 单击 创建权限策略

  4. 选择 编辑模式

      可视化编辑

      1. 效果 选择 允许

      2. 服务 选择 云数据 OceanBase 版

      3. 操作 选择 读操作 中的Describe相关权限 。

      4. 说明

        您可以搜索Describe,然后勾选所有Describe相关权限。

      5. 资源 选择 全部资源

      6. 单击 添加条件,设置 条件键标签键运算符条件值

      7. 说明

        条件 的参数配置中,条件键 固定配置为oceanbase:ResourceTag运算符 固定配置为StringEquals标签键条件值 配置为步骤 1 中为 OceanBase 实例绑定的 标签键标签值

      脚本编辑

      在脚本编辑窗口中,填写如下内容:

      说明

      如下脚本中,test-ramoceanbase-mysql仅为示例,实际使用时,需要配置为步骤 1 中为 OceanBase 实例绑定的 标签键标签值

      {
        "Version": "1",
        "Statement": [
          {
            "Effect": "Allow",
            "Action": [
              "oceanbase:Describe*"
            ],
            "Resource": [
              "*"
            ],
            "Condition": {
              "StringEquals": {
                "oceanbase:ResourceTag/test-ram": [
                  "oceanbase-mysql"
                ]
              }
            }
          }
        ]
      }
  5. 单击 继续编辑基本信息

  6. 填写策略 名称备注,确认策略内容无误后,单击 确定

为指定RAM用户应用自定义策略。

  1. 在左侧导航栏选择 身份管理 > 用户

  2. 找到目标用户,单击右侧 操作 列的 添加权限

  3. 授权范围 中配置 整个云账号,然后在 选择权限 区域,单击 自定义策略,搜索刚创建的策略并选中该策略,然后单击 确定

  4. 单击 完成

RAM 用户登录 OceanBase 管理控制台 并查看实例。

  1. RAM 用户访问 ,在上方选择地域。

  2. 单击已授权的实例,可以正常查看访问实例。

授权信息参考

使用自定义权限策略,您需要了解业务的权限管控需求,并了解云数据库 OceanBase 的授权信息。详细内容请参见 授权信息