SQL审核平台Yearning部署

Yearning优势:

Yearning SQL 审计平台 基于Vue.js与Django的整套mysql-sql审核平台解决方案。提供基于Inception的SQL检测及执行。不依赖于任何第三方 SQL 审核工具作为审核引擎,内部已自己实现审核/回滚相关逻辑。

Yearning主要功能:

SQL查询、查询导出、查询自动补全、SQL审核、流程化工单、SQL语句检测、SQL语句执行、SQL回滚、SQL自动审核执行、历史审核记录、查询审计、推送、E-mail工单推送、自定义webhook消息推送(钉钉)、LDAP登陆、用户权限及管理、权限组划分、自定义审核层级。

Yearning 官网:https://guide.yearning.io/

安装

搭建环境:

MySQL版本:5.7.21

linux系统:CentOS7

Python版本:3.6

Yearning版本:2.3.0

Yearning下载

官网下载:https://github.com/cookieY/Yearning/releases

网盘下载:
链接:https://pan.baidu.com/s/14mIcCfBMpxyyBC9Tn4_LZg
提取码:ga7p

#上传至服务器
#解压
unzip Yearning-2.3.0-RC5-linux-amd64.zip
#移动
mv Yearning-go /usr/local/Yearning
#进入Yearning目录,修改conf.toml
[Mysql]
#Yearning仓库名称
Db = "Yearning"
#Yearning仓库地址
Host = "127.0.0.1"
Port = "3306"
Password = "xxxx"
User = "xxxx"

#注:Yearning最好与要使用的数据库异库,用单账号权限操作,或用docker启动方式使用虚拟数据库。docker安装方式下面会讲到

[General]  
SecretKey = "lalalalalalalalalalala"
SecretKey 是 token/数据库密码加密/解密的 salt。
 #数据库加解密key,只可更改一次。
#建议所有用户在初次安装 Yearning 之前将 SecretKey 更改(不更改将存在安全风险)
#格式: 大小写字母均可, 长度必须为 16 位 如长度不是16位将会导致无法新建数据源
#特别注意:
#此 key 仅可在初次安装时更改!之后不可再次更改!如再次更改会导致之前已存放的数据源密码无法解密,最终导致无法获取相关数据源信息


#使用帮助
./Yearning -h

#初始化数据结构
./Yearning -m

#默认启动
./Yearning -s

#nohup 启动   172.27.80.35 可替换成域名
nohup ./Yearning -s -b "172.27.80.35" -p "8000" &

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

Docker安装

#Yearning安装包内已含有Dockerfile文件,可直接进行build打包成镜像
#修改docker的mysql服务参数
vim docker-compose.yml
services:
    yearning:
        image: test/yearning:latest
        build:
            context: .
            dockerfile: Dockerfile
        environment:
            MYSQL_USER: yearning
            MYSQL_PASSWORD: 密码
            MYSQL_ADDR: mysql
            MYSQL_DB: yearning
        ports:
            - 8000:8000
       #自启动
        depends_on:
            - mysql
        restart: always

    mysql:
        image: mysql:5.7
        environment:
            MYSQL_ROOT_PASSWORD: mysql密码
            MYSQL_DATABASE: yearning
            MYSQL_USER: yearning
            MYSQL_PASSWORD: 密码
        command:
            - --character-set-server=utf8mb4
            - --collation-server=utf8mb4_unicode_ci
		#mysql持久化
        volumes: 
            - ./mysql/data:/var/lib/mysql
# 默认账号:admin,默认密码:Yearning_admin

#编辑Dockerfile
FROM alpine:3.12

LABEL maintainer="HenryYee-2020/07/03"

EXPOSE 8000

COPY Yearning  /opt/Yearning
COPY dist /opt/dist
COPY conf.toml /opt/conf.toml

RUN echo "http://mirrors.ustc.edu.cn/alpine/v3.12/main/" > /etc/apk/repositories && \
      apk add --no-cache tzdata libc6-compat && \
      ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \
      echo "Asia/Shanghai" >> /etc/timezone && \
      echo 'hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4' >> /etc/nsswitch.conf

WORKDIR /opt

ENTRYPOINT  ["/opt/Yearning"]

#如配置域名可修改CMD 无域名 无端口限制,可不用编辑Dockerfile文件
#CMD ["-m", "-s"]
CMD ["-m", "-s", "-b", "域名"]
启动
#按照上述方法配置启动
docker-compose up -d

使用:

根据DBA分配的权限账号登陆之后在首页可修改自己的个人信息以及查看自己的权限。
首页
点击我的工单可查看自己提交过的工单。
我的工单
工单提交功能。
第一步:
在这里插入图片描述
第二步:在这里插入图片描述
SQL查询功能:
在这里插入图片描述
在这里插入图片描述
查询完毕点击结束会话即可。

Logo

前往低代码交流专区

更多推荐