找回密码
 立即注册
首页 业界区 安全 专注隐私和效率!一款 DBA 必备的 MySQL 本地化审计工具 ...

专注隐私和效率!一款 DBA 必备的 MySQL 本地化审计工具!

庾签 13 小时前
大家好,我是 Java陈序员。
对于企业而言,MySQL 数据库的操作审计从来都不是小事:一次违规的 DDL 操作可能导致数据丢失,无管控的查询可能泄露核心敏感信息,缺乏追溯的操作记录更是合规审计的“重灾区”。
传统的人工审核模式效率低、易遗漏,云端审计工具又让企业担心数据泄漏问题。
今天,给大家推荐一款本地化的 SQL 审计工具,专注隐私和效率!
关注微信公众号:【Java陈序员】,获取开源项目分享、AI副业分享、超200本经典计算机电子书籍等。
项目介绍

Yearning —— 一个强大且本地部署的平台,专为数据库管理员(DBA)和开发人员设计,提供无缝的 SQL 检测和查询审计。
功能特色

  • 全流程 SQL 审计:从工单提交到执行复盘,实现 SQL 操作全生命周期管控,内置丰富的 SQL 语法检查规则,所有 DDL/DML 操作需提交工单,工单提交、审核、执行记录全程留存
  • 精细化权限管控:基于 RBAC 机制,按角色划分数据源、数据库访问、查询工单、审计功能等权限
  • 全维度管控数据访问:记录所有用户查询操作,限制数据源访问范围,留存查询记录供后续追溯,对身份证、手机号等敏感字段自动脱敏展示,兼顾查询需求与数据保护
  • 实用交互功能:提供 SQL 语法高亮、自动补全功能,支持国际化多语言
  • AI 智能辅助:内置 AI 助手模块,覆盖 SQL 编写、优化全场景
快速上手

Yearning 支持 Docker 部署,可使用 Docker 快速部署。
1、拉取镜像
  1. docker pull yeelabs/yearning
复制代码
2、Yearning 依赖 MySQL 数据库,MySQL 版本必须为 5.7 及以上版本(8.0 及以上请将 sql_mode 设置为空)并且需要创建 yearning 库,字符集应为 UTF8mb4
  1. CREATE DATABASE `yearning` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
复制代码
3、初始化数据库数据
  1. docker run --rm -it \
  2.         -p 8000:8000 \
  3.         -e SECRET_KEY=$SECRET_KEY \
  4.         -e MYSQL_USER=$MYSQL_USER \
  5.         -e MYSQL_ADDR=$MYSQL_ADDR \
  6.         -e MYSQL_PASSWORD=$MYSQL_PASSWORD \
  7.         -e MYSQL_DB=$Yearning_DB \
  8.         -e Y_LANG=zh_CN \
  9.         yeelabs/yearning "/opt/Yearning install"
复制代码
环境变量需要进行修改,参数说明:

  • $SECRET_KEY: token/数据库密码加密/解密的 salt, 大小写字母均可, 长度必须为 16 位 如长度不是 16 位将会导致无法新建数据源
  • $MYSQL_USER: 数据库连接用户
  • $MYSQL_ADDR: 数据库连接地址
  • $MYSQL_PASSWORD: 数据库连接密码
  • $Yearning_DB: 数据库名
4、运行容器
  1. docker run -d -it \
  2.     --name yearning \
  3.         -p 8000:8000 \
  4.         -e SECRET_KEY=$SECRET_KEY \
  5.         -e MYSQL_USER=$MYSQL_USER \
  6.         -e MYSQL_ADDR=$MYSQL_ADDR \
  7.         -e MYSQL_PASSWORD=$MYSQL_PASSWORD \
  8.         -e MYSQL_DB=$Yearning_DB \
  9.         -e Y_LANG=zh_CN \
  10.         yeelabs/yearning
复制代码
环境变量需要进行修改,参数说明同上。
传入相应变量后(仅供参考):
  1. docker run -d -it \
  2.     --name yearning \
  3.     -p 8000:8000 \
  4.     -e SECRET_KEY=0123456789abcdef \
  5.     -e MYSQL_USER=root \
  6.     -e MYSQL_ADDR=10.0.0.3:3306 \
  7.     -e MYSQL_PASSWORD=root \
  8.     -e MYSQL_DB=yearning \
  9.     -e Y_LANG=zh_CN \
  10.     yeelabs/yearning
复制代码
5、容器运行成功后,浏览器访问
  1. http://{IP/域名}:8000
复制代码
默认账号:admin, 默认密码:Yearning_admin.
功能体验


  • 首页
1.png


  • AI 建议
2.png


  • 我的工单
3.png

4.png


  • 工单申请
5.png


  • 工单审批
6.png

7.png


  • 用户
8.png


  • 数据源
9.png


  • 流程
10.png


  • 审核规则
11.png


  • 设置
12.png

可以说,无论是中小企业的数据库审计需求,还是大型团队的精细化权限管控场景,Yearning 都能适配。如果你正被 SQL 审计、权限管控困扰,不妨试试!快去部署体验吧~
  1. 项目地址:https://github.com/cookieY/Yearning
复制代码
最后

推荐的开源项目已经收录到 GitHub 项目,欢迎 Star:
  1. https://github.com/chenyl8848/great-open-source-project
复制代码
或者访问网站,进行在线浏览:
  1. https://chencoding.top:8090/#/
复制代码
13.png

我创建了一个开源项目交流群,方便大家在群里交流、讨论开源项目
但是任何人在群里打任何广告,都会被 T 掉
如果你对这个交流群感兴趣或者在使用开源项目中遇到问题,可以通过如下方式进群
关注微信公众号:【Java陈序员】,回复【开源项目交流群】进群,或者通过公众号下方的菜单添加个人微信,并备注【开源项目交流群】,通过后拉你进群
大家的点赞、收藏和评论都是对作者的支持,如文章对你有帮助还请点赞转发支持下,谢谢!

来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

相关推荐

您需要登录后才可以回帖 登录 | 立即注册