MySql审计平台

安装方式:

cookieY/Yearning: 🐳 A most popular sql audit platform for mysql (github.com)

对数据库的一系列后台操作

  • AI助手 - AI助手提供SQL优化建议,帮助用户优化SQL语句,以获得更好的性能。同时AI助手还提供文本到SQL的转换功能
  • SQL审计 - 支持创建带有标准工作流和自动语法检查器的SQL审计工单,以验证提交的SQL语句的正确性、安全性和合规性。在需要时自动生成与提交的DDL/DML操作相对应的回滚语句,方便恢复操作。保留所有SQL审计操作的详细历史记录,以实现可追溯性和审计目的。
  • 查询审计 - 支持对用户查询语句进行审计,包括对数据源和数据库的限制,以及敏感字段的匿名化处理。查询记录也会被保存以供日后参考。
  • 检查规则 - 自动语法检查器支持数十种检查规则,满足大多数自动检查场景的需求。
  • 安全 - 可在本地部署并具有开源特性的解决方案确保您的数据库和SQL语句的安全。除了提供对基础架构的控制外,还包括加密机制,用于在将敏感数据存储到数据库之前保护数据。
  • RBAC - 可以创建和管理不同角色,并为每个角色分配特定权限。这使您可以根据分配的角色限制用户对查询工单、审计功能和其他敏感操作的访问权限。

手动安装:

## 初始化数据库
./Yearning install

## 启动
./Yearning run

## 帮助
./Yearning --help

这里有俩种方式:

1、docker容器里面安装mql(官方)

## 初始化数据库
docker run --rm -it -p8000:8000 -e SECRET_KEY=$SECRET_KEY -e MYSQL_USER=$MYSQL_USER -e MYSQL_ADDR=$MYSQL_ADDR -e MYSQL_PASSWORD=$MYSQL_PASSWORD -e MYSQL_DB=$Yearning_DB yeelabs/yearning "/opt/Yearning install"
## 必须在启动容器中初始化数据库
docker run -d -it -p8000:8000 -e SECRET_KEY=$SECRET_KEY -e MYSQL_USER=$MYSQL_USER -e MYSQL_ADDR=$MYSQL_ADDR -e MYSQL_PASSWORD=$MYSQL_PASSWORD -e MYSQL_DB=$Yearning_DB yeelabs/yearning

自己:

先拉取mysql镜像,构建容器,然后运行容器,映射本机访问端口,3306

docker pull mysql:5.7
docker run -itd --name mysql -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 mysql:5.7

这是最新版

这个是老版本稳定版3.1.0的

启动之前需要修改一下配置文件
[root@ruoyi Yearning]# vim conf.toml 
[Mysql]
Db = "yearning"
Host = "127.0.0.1"    --这个是本机mysql,写的是本机的IP,容器的话,需要写127.0.0.2
Port = "3306"
Password = "123456"  --数据库的密码
User = "root"      --登录的用户

[General]
SecretKey = "dbcjqheupqjsuwsm"
Hours = 4


[Oidc]
Enable = false
ClientId = "yearning"
ClientSecret = "fefehelj23jlj22f3jfjdfd"
Scope = "openid profile"
AuthUrl = "https://keycloak.xxx.ca/auth/realms/master/protocol/openid-connect/auth"
TokenUrl = "https://keycloak.xxx.ca/auth/realms/master/protocol/openid-connect/token"
UserUrl = "https://keycloak.xxx.ca/auth/realms/master/protocol/openid-connect/userinfo"
RedirectUrL = "http://127.0.0.1:8000/oidc/_token-login"
UserNameKey = "preferred_username"
RealNameKey = "name"
EmailKey = "email"
SessionKey = "session_state"

#启动命令
[root@ruoyi ~]# ls
RuoYi-Vue-jenkins                anaconda-ks.cfg                            prometheus-2.45.0.linux-amd64              ruoyi-project-compose.tar.gz
Yearning                         grafana-enterprise-10.0.0-1.x86_64.rpm     prometheus-2.45.0.linux-amd64.tar.gz
Yearning-v3.1.0-linux-amd64.zip  mysqld_exporter-0.15.0.linux-amd64         redis_exporter-v1.53.0.linux-amd64
a.sh                             mysqld_exporter-0.15.0.linux-amd64.tar.gz  redis_exporter-v1.53.0.linux-amd64.tar.gz
[root@ruoyi ~]# cd Yearning
[root@ruoyi Yearning]# ls
README.md  Yearning  conf.toml  docker  migrate
[root@ruoyi Yearning]# ./Yearning run
检查更新.......
数据已更新!

2024/08/03 12:21:10 /Users/henryyee/PersonalProjects/Yearning-go/src/service/yearning.go:62 record not found
[4.313ms] [rows:0] SELECT * FROM `core_global_configurations` ORDER BY `core_global_configurations`.`id` LIMIT 1

    __  __          
    _ \/ /_________ 
    __  /_  _ \  _ \
    _  / /  __/  __/
    /_/  \___/\___/   yee v0.3.5
-----Easier and Faster-----
Creator: Henry Yee

1、上传代码包

2、创建数据库或数据库容器,创建库,注意库要配置utf8字符集

create database yearning default charset 'utf8';

3、修改配置文件

库名如果不同需要修改

密码需要修改

4、./Yearning install 安装

5、运行程序

./Yearning run

6、访问

端口:8000

账号:admin

密码:Yearning_admin

7、操作流程

1、创建用户->2、将用户加入到权限组->3、数据源(需要操作的数据库)->配置权限组,将数据源加入到权限组->登录到不同的用户测试流程

相关推荐
kejijianwen1 小时前
JdbcTemplate常用方法一览AG网页参数绑定与数据寻址实操
服务器·数据库·oracle
编程零零七2 小时前
Python数据分析工具(三):pymssql的用法
开发语言·前端·数据库·python·oracle·数据分析·pymssql
高兴就好(石5 小时前
DB-GPT部署和试用
数据库·gpt
这孩子叫逆5 小时前
6. 什么是MySQL的事务?如何在Java中使用Connection接口管理事务?
数据库·mysql
Karoku0665 小时前
【网站架构部署与优化】web服务与http协议
linux·运维·服务器·数据库·http·架构
码农郁郁久居人下6 小时前
Redis的配置与优化
数据库·redis·缓存
MuseLss7 小时前
Mycat搭建分库分表
数据库·mycat
Hsu_kk7 小时前
Redis 主从复制配置教程
数据库·redis·缓存
DieSnowK7 小时前
[Redis][环境配置]详细讲解
数据库·redis·分布式·缓存·环境配置·新手向·详细讲解
程序猿小D7 小时前
第二百三十五节 JPA教程 - JPA Lob列示例
java·数据库·windows·oracle·jdk·jpa