常用SQL审计平台介绍

数据安全一直是企业安全的重中之重,在企业系统开发过程中,数据库的安全日益增强,所以需要有个平台能够记录和审查数据库变更。

SQL 审计平台的功能特点:

  • 实时监控和记录:SQL 审计平台能够实时监听数据库操作,记录所有的 SQL 查询和事务操作,确保数据变更的可追溯性。
  • 用户行为分析:通过分析用户的查询行为和访问模式,SQL 审计平台可以识别风险操作、异常查询和异常登录行为,帮助提前发现潜在的安全威胁。
  • 合规报告与警报:SQL 审计平台能够生成详尽的合规报告,满足合规要求,并根据预设的规则触发警报,帮助管理员及时采取应对措施。
  • 数据完整性保护:通过审计日志记录的数据变更信息,SQL 审计平台能够帮助恢复受损的数据或进行调查取证,确保数据库的完整性和可靠性。
  • 权限管理与访问控制:SQL 审计平台提供丰富的权限管理功能,可以对用户进行细粒度的访问控制,确保只有经过授权的用户能够访问敏感数据。

常见的sql审计平台:

  • Yearning
  • Archery
  • bytebase

Yearning

官网:https://yearning.io

开发语言:golang

功能:

  • SQL 查询
    • 查询工单
    • 导出
    • 自动补全,智能提示
    • 查询语句审计
    • 查询结果脱敏
  • SQL 审核
    • 流程化工单
    • SQL语句语法检测
    • 根据规则检测SQL语句合规性
    • 自动生成DDL/DML回滚语句
    • 历史审核记录
  • 推送
    • E-mail 工单推送
    • 钉钉 webhook 机器人工单推送
  • 用户权限及管理
    • 角色划分
    • 基于用户的细粒度权限
    • 注册
  • 其他
    • todoList
    • LDAP 登录
    • 动态审核规则配置
    • 自定义审核层级
  • AutoTask 自动执行

部署

支持容器部署。

Archery

官网:https://archerydms.com/

开发语言:python

功能:

查询 审核 执行 备份 数据字典 慢日志 会话管理 账号管理 参数管理 数据归档
MySQL
MsSQL × × × × × × ×
Redis × × × × × × ×
PgSQL × × × × × × ×
Oracle × × × × ×
MongoDB × × × × × ×
Phoenix × × × × × × ×
ODPS × × × × × × × ×
ClickHouse × × × × × × × ×

SQL审核

MySQL实例

基于Inception/goInception实现,集成审核、执行、备份

非MySQL实例

支持提交和执行工单,依托工作流实现流程化管理

审核执行分离

审批和执行可以分配给不同的用户进行操作

SQL工单自动审批、高危语句驳回

支持正则判断工单是否需要人工审批,开启自动审批后,不在正则范围内的SQL语句无需审批,系统自动审核
自主控制SQL是否自动驳回,可自主配置对inception审核驳回的场景,支持警告驳回和异常驳回

快速上线其他实例

在工单详情可快速提交相同SQL内容到其他实例,可适用于test>beta>ga等多套环境维护的需求

定时执行

工单审核通过后可以选择定时执行或者立即执行

SQL查询

多类型数据库支持

MySQL 表级授权、脱敏查询
MsSQL 库级授权、脱敏查询
Redis 库级授权
PostgreSQL 库级授权、脱敏查询
Oracle 库级授权、脱敏查询
MongoDB 库级授权
Phoenix 库级授权
ODPS 库级授权
ClickHouse 库级授权

授权管理

工作流控制SQL查询授权,支持库表级别的权限限制,以及授权时间,查询结果集的限制
支持部分语句的动态查询脱敏(有限的功能)
支持前台管理用户权限,对用户权限进行修改和维护
支持查询导出、查询日志审计

页面体验

库、表、字段补全提示
多结果级展示
表结构查看

SQL优化

慢日志管理

基于PT收集慢日志,需要单独部署 SQL语句优化

基于SQLAdvisor|SOAR|SQLTuning的全方位优化建议

实例管理

会话管理

支持查看和批量终止会话
支持查看事物、锁信息

数据库管理

管理实例数据库,支持添加

账号管理

管理实例账号,支持增加、授权、删除

参数配置

可修改实例动态参数并记录修改历史

工具插件

PTArchiver

支持使用pt-archiver归档MySQL数据,支持直接添加配置和由用户申请归档

Binlog2SQL

将Binlog2SQL模块可视化,从MySQL binlog解析出你要的SQL

My2SQL

My2SQL可视化,更高效地解析MySQL binlog,快速回滚

SchemaSync

对比不同数据库的Schema信息,输出修改语句和回滚语句,SchemaSync不仅限于表结构,它可以处理的对象还有:视图、事件、存储过程、函数、触发器、外键

资源(项目)组

支持自定义资源(项目)组,管理资源组和关联对象,资源组成员之间审批流程、实例配置、消息通知等资源隔离

权限(角色)组

权限可以分配给用户,也可以分配给权限组,支持对大多数操作进行限制,独立控制用户的审核、执行等操作权限

工作流

工作流审批流程支持多层级多用户,并且隔离资源组,不同资源组不同的工单类型可以配置不同的审批层级

配置管理

系统配置项、工作流审批流程可在前端页面动态修改,无需重启服务实时生效

消息通知

支持钉钉、企业微信、邮件通知,及时知晓工单状态变化

可视化

使用pyecharts实现工单、查询维度的可视化统计

部署

支持容器部署。

bytebase

bytebase是一款比较新的商业化产品,它提供了免费版和收费版。界面相对前面两款产品也更现代化一些。不过免费版功能限制较多。