查看原文
其他

8k Stars 简单、高效、开箱即用的MySQL审核工具

小奇 爱编程爱技术 2024-02-24

今天小编分享一款开源的 MySQL SQL语句和查询审计工具,为DBA与开发人员使用。支持本地部署,注重隐私。

Yearning 是一款可满足大部分公司SQL审核需求的web端可视化SQL审核平台。简单高效,开箱即用。不仅实现了常规的sql审核功能,此外还添加了如数据查询等一系列便捷的功能。

项目已经开源了5年多,非常受DBA的认可,目前在GitHub上已经获得了8k stars,2k forks。

🎨️ 最新版本支持的功能

SQL审计
支持创建带有批准工作流和自动语法检查器的SQL审计工单,以验证提交的SQL语句的正确性、安全性和合规性。
在需要时自动生成与提交的DDL/DML操作相对应的回滚语句,方便恢复操作。

保留所有SQL审计操作的详细历史记录,以实现可追溯性和审计目的。

查询审计
支持对用户查询语句进行审计,包括对数据源和数据库的限制,以及敏感字段的匿名化处理。

查询记录也会被保存以供日后参考。

检查规则

自动语法检查器支持数十种检查规则,满足大多数自动检查场景的需求。

安全

可在本地部署并具有开源特性的解决方案确保您的数据库和SQL语句的安全。除了提供对基础架构的控制外,还包括加密机制,用于在将敏感数据存储到数据库之前保护数据。

RBAC

可以创建和管理不同角色,并为每个角色分配特定权限。这使您可以根据分配的角色限制用户对查询工单、审计功能和其他敏感操作的访问权限。

🔥 数据库支持列表


🧰 自建部署

前提条件:
  • Mysql 数据库5.7及以上版本
  • 8.0及以上需设置 sql_mode 为空
  • 创建 Yearning 库,字符集应为UTF8mb4
  • 仅支持 1080p 及以上显示器访问
  • 使用Chrome最新版本(不包括 360 等其他魔改版本)

具体部署步骤如下:

1、在 GitHub 下载官方最新的 releases 版本,根据实际的机器配置选择合适的版本。这里建议用 amd64 版本。

下载地址:

https://github.com/cookieY/Yearning/releases

2、修改配置文件

下载完成后解压,进入Yearning目录,找到 conf.toml 文件,修改数据库地址、端口号等信息

cd Yearning
cat conf.toml[Mysql]Db = "Yearning"Host = "127.0.0.1"Port = "3306"Password = "xxxx"User = "root"[General] #数据库加解密key,只可更改一次。SecretKey = "dbcjqheupqjsuwsm"
其中 SecretKey 是 token/数据库密码加密/解密的 salt。建议在初次安装 Yearning 之前将 SecretKey 更改,防止存在安全风险。
格式要求:大小写字母均可, 长度为 16 位,不是 16 位会导致无法新建数据源!

特别注意:此 key 仅可在初次安装时更改!之后不可再次更改!如再次更改会导致之前已存放的数据源密码无法解密,最终导致无法获取相关数据源信息!

3、初始化安装
如需再次安装,请先把 yearning 库下所有表删除,否则重复执行无效。
./Yearning install
4、启动服务
# 默认启动./Yearning run
# 指定ip port参数启动./Yearning run --push "172.27.80.35" --port "8000"
如果服务器使用了Nginx 反向代理,需在 nginx.conf 配置文件中增加如下配置,使Nginx 支持 websocket 协议。
proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade";
5、打开 Chrome 浏览器
访问:http://<ip>:8000

默认账号:admin

默认密码:Yearning_admin

🐞 如何使用

1、工单提交

点击工单申请页面,根据实际提单需求选择DML/DDL/Query中的某一类进行工单提交。

点击对应数据源卡片进入工单提交页面

2、工单审批/执行

进入 审核 ->工单 页面选择需要审批的工单,点击详情按钮,进入审核详情页


如何使用审计功能?

审计功能为具有审计人角色的用户提供平台工单/查询数据的审计支持。
1、赋予审计用户审计人角色(用户页面)

2、审计用户重新登录后即可在导航栏处看到审计栏


Yearning 不依赖于任何第三方 SQL 审核工具作为审核引擎,内部已实现审核、回滚相关逻辑。用户界面流畅且美观,性能强大。不依赖其他任何插件,小白也能轻松实现部署。

最后贴上项目的链接:

开源地址:https://github.com/cookieY/Yearning
官网:https://next.yearning.io
Docker部署方式参考:https://next.yearning.io/guide/cloud.html


往期推荐:

9.1k Stars Office文件在线预览协同办公,开源可自托管!
17K+ Stars 最新开源的团队协作利器,媲美飞书!
40k+ stars 闪电般快速的开源搜索引擎
55k+ Stars 开源现代化的数据探索和数据可视化平台
点关注不迷路,每日分享开源项目

继续滑动看下一个

8k Stars 简单、高效、开箱即用的MySQL审核工具

小奇 爱编程爱技术
向上滑动看下一个

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存