文档首页/ 云堡垒机 CBH/ 最佳实践/ 数据库运维高危操作的复核审批
更新时间:2022-11-30 GMT+08:00

数据库运维高危操作的复核审批

云堡垒机支持通过执行命令运维数据库,包括数据删除、修改、查看等运维操作。为确保数据库敏感信息的安全,避免关键信息的丢失和泄露,本文针对运维用户访问和运维数据库关键信息,详细介绍了如何设置数据库高危操作的复核审批,以及如何实现关键信息的重点监控。

本文以管理员admin_A授权运维用户User_A,针对MySQL数据库资源RDS_A高危操作的二次授权为例。

应用场景

云堡垒机(Cloud Bastion Host,CBH),通过设置数据库控制策略,设置预置命令执行策略,动态识别并拦截高危命令(包括删库、修改关键信息、查看敏感信息等),中断数据库运维会话。同时自动生成数据库授权工单,发送给管理员进行二次审批授权。只有管理员审批工单授权执行操作后,运维用户才能执行该高危操作,继续数据库运维会话。

约束限制

目前仅支持二次审核MySQL或Oracle数据库的执行命令。

前提条件

  • 云堡垒机所在安全组已放开相应数据库访问端口,数据库与云堡垒机之间网络连接畅通。
  • 资源RDS_A已被纳管为主机运维方式资源。
  • 运维用户User_A已获取资源RDS_A的访问控制权限。

配置二次审核策略

为实现高危操作的复核审批,需在“数据库控制策略”中预置命令规则,并开启“动态授权”执行方式。

  1. admin_A登录云堡垒机系统。
  2. 选择策略 > 数据库控制策略,进入数据库控制策略页面。
  3. 配置数据库规则集,选择预置高危操作命令。

    1. 选择“规则集”页签。
      图1 规则集管理页面
    2. 单击“新建”,创建一个MySQL数据库的规则集。以新建DB-test规则集为例。
      图2 创建规则集
    3. 单击“添加规则”,在DB-test规则集中添加“库”“表”“命令”规则。以添加DELETE删除表内容的命令为例。
      • “命令”为必填项,至少需选择一个命令,可同时选择多个命令。
      • 设置“库”“表”,表示对数据库中库或表操作的命令限制。
      • 未设置“库”“表”,表示对数据库中全部操作的命令限制。
      图3 添加命令规则

  4. 配置数据库策略。

    1. 选择“策略列表”页签。
      图4 数据库控制策略管理页面
    2. 单击“新建”,创建一个“动态授权”的数据库控制策略。以新建DB-ACL策略为例。
      图5 配置动态授权
    3. 关联规则集DB-test
      图6 关联规则集
    4. 关联用户User_A和关联资源RDS_A
      图7 关联用户和资源

效果验证

运维用户执行高危操作,触发拦截,申请操作权限。管理员通过对高危操作的二次审核,加强对数据库核心资产的管控力度。

  1. 运维用户User_A登录资源RDS_A

    1. 登录云堡垒机系统。
    2. 选择运维 > 主机运维
    3. 单击“登录”,通过SSO单点登录工具调用数据库客户端,登录数据库资源RDS_A
      图8 登录数据库资源

  2. 以调用Navicat客户端登录数据库为例。运维用户User_A在资源RDS_A中,执行删除表内容操作,自动触发拦截DELETE命令,提示无权限删除。

    图9 触发拦截

  3. 运维用户User_A提交数据库授权工单,反馈给管理员admin_A审批。

    1. 运维用户User_A登录云堡垒机系统。
    2. 选择工单 > 数据库授权工单,查看因删除操作被拦截而产生的工单。
    3. 单击“提交”,提交对资源RDS_A删除操作的授权申请。
      图10 提交数据库授权工单

  4. 管理员admin_A审核运维用户User_A的运维操作,根据实际情况批准或驳回申请。

    1. 管理员admin_A登录云堡垒机系统。
    2. 选择工单 > 工单审批,审核User_A数据库授权工单。
    3. 单击“批准”“驳回”,审批工单。

      仅管理员“批准”工单后,运维用户才能继续执行被拦截的高危操作。

      图11 审批工单