当前位置: 欣欣网 > 码农

Yearning开源SQL自动化审核平台

2024-05-09码农

介绍

在数据驱动的时代,数据库的安全性和稳定性至关重要。今天,我们来深入了解一款名为Yearning的MySQL SQL审核平台,它以其出色的自动化审核功能,为数据库管理员(DBA)提供了一个强大的助手。

Yearning是一个专为MySQL设计的SQL审核平台,它通过自动化的审核流程,帮助提升数据库操作的安全性和效率。

功能

Yearning 拥有多项实用型功能。助力DBA提升工作自动化、标准化。平台的主要特点包括:

  1. 自动化SQL审核 :Yearning能够自动检测SQL语句,并执行审核,确保语句的安全性和规范性。

  2. 生成回滚语句 :执行DDL/DML语句后,Yearning能够自动生成对应的回滚语句,为数据库操作提供一层额外的安全保障。

  3. 审计功能 :平台提供审核和查询审计功能,帮助追踪和记录所有数据库活动。

  4. 多渠道通知 :支持LDAP登录、钉钉、邮件等多种消息推送方式,确保关键信息及时传达。

  5. 自定义工作流 :允许用户根据需要自定义审核工作流,提高审核流程的灵活性。

  6. 细粒度权限分配 :实现对不同用户权限的精细控制,保障数据的安全性。

技术实现

Yearning平台的后端逻辑采用Go语言实现,以其简洁的语法和强大的性能,为平台提供了坚实的基础。前端界面则采用vue.js框架,利用现代化的渲染技术,为用户提供了流畅且美观的操作体验。

采用AGPL-3.0许可 开源社区不断的更新与维护 使Yearning能持续提供更优质的服务与功能.

使用Yearning已编译好的二进制文件,只需一个数据库不依赖其他任何插件,轻松实现部署。

Yearning 根据Mysql语法树解析自动审查Mysql语句语法规范并根据Yearning自身实现的审核规则进行功能性审核.

语法支持

Yearning 目前兼容99%的Mysql 标准SQL语法。但由于审核逻辑等因素的限制,对一些SQL语句并不能保证得到正确的反馈 已知不支持的语句类型有:

  • 复杂的查询语句(多表,多函数,非必现。并不是所有复杂语句不支持)

  • 外键相关语句

  • 不支持跨库DML语句的回滚

  • 存储过程/触发器

  • 安装

    下载

    Yearning-go 提供二进制下载包。下载地址 https://github.com/cookieY/Yearning/releases

    Yearning Mysql数据审核平台
    Version: 3.1.5
     __ __ _
     \ \ / /__ __ _ _ __ _ __ (_)_ __ __ _ 
    \ V /
     _ \/ _` | '__| '_ \| | '_ \ / _` |
    | | __/ (_| | | | | | | | | | | (_| |
    |_|\___|\__,_|_| |_| |_|_|_| |_|\__, |
    |___/ 

    目录结构

    .
    ├── conf.toml
    ├── docker
    │ ├── docker-compose.yml
    │ ├── Dockerfile
    │ └── README.md
    ├── migrate
    ├── nohup.out
    ├── README.md
    └── Yearning

    配置文件

    cat conf.toml
    [Mysql]
    Db = "Yearning"
    Host = "127.0.0.1"
    Port = "3306"
    Password = "xxxx"
    User = "root"
    [General] #数据库加解密key,只可更改一次。
    SecretKey = "dbcjqheupqjsuwsm"

    初始化及安装

    ./Yearning install

    如要再次安装,请先把 yearning 库下所有表删除,否则重复执行无效

    启动服务

    ./Yearning run

    打开浏览器 http://127.0.0.1:8000 默认账号/密码: admin/Yearning_admin