Yearning 部署及基础使用

Yearning 部署及基础使用一 简介 Yearning 是面向中小型企业的轻量级 MySQL SQL 语句审核平台 提供查询审计 SQL 审核等多种功能 主要功能 SQL 查询 查询工单 导出 自动补全 智能提示 查询语句审计 查询结果脱敏 SQL 审核 流程化工单 SQL 语句语法检测 根据规则检测 SQL 语句合规性 自动生成 DDL DML 回滚语句 历史审核记录 推送

大家好,我是讯享网,很高兴认识大家。

一、简介

Yearning 是面向中小型企业的轻量级MySQL SQL语句审核平台,提供查询审计、SQL审核等多种功能。
主要功能

  • SQL 查询
    • 查询工单
    • 导出
    • 自动补全,智能提示
    • 查询语句审计
    • 查询结果脱敏
  • SQL 审核
    • 流程化工单
    • SQL语句语法检测
    • 根据规则检测SQL语句合规性
    • 自动生成DDL/DML回滚语句
    • 历史审核记录
  • 推送
    • E-mail 工单推送
    • 钉钉 webhook 机器人工单推送
  • 用户权限及管理
    • 角色划分
    • 基于用户的细粒度权限
    • 注册
  • 其他
    • todoList
    • LDAP 登录
    • 动态审核规则配置
    • 自定义审核层级
  • AutoTask 自动执行

二、部署

下载地址 https://github.com/cookieY/Yearning/releases
Yearning-v3.1.4-linux-amd64.zip

2.1 创建目录并解压

创建一个yearning目录,将安装包上传并解压
image.png
讯享网

2.2 修改配置文件

vim conf.toml

[Mysql] Db = "Yearning" Host = "127.0.0.1" #必须是127的这个地址 Port = "3306" Password = "xxxx" #mysql数据库的密码 User = "root" [General] #数据库加解密key,只可初始化时更改一次 SecretKey = "dbcjqheupqjsuwsm" # SecretKey 是 token/数据库密码加密/解密的 salt,此 key 仅可在初次安装时更改!之后不可再次更改!如再次更改会导致之前已存放的数据源密码无法解密,最终导致无法获取相关数据源信息 

讯享网

image.png

2.3 在mysql创建对应的库

create database Yearning DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

2.4 初始化和安装

./Yearning install
1683252211992.jpg
启动,默认8000端口./Yearning run 或者 ./Yearning run --push "ip" -port "指定端口号"
后台运行nohup ./Yearning run -b "ip" -p "端口号" > /data/yearning/Yearning/log/yearning.log 2>&1 &
nohup sh seata-server.sh > ./seata.log 2>&1 &
1683252241094.jpg

2.5 验证登录

打开浏览器输入 http://ip:8000
默认账号/密码:admin/Yearning_admin
1683253652884.jpg
image.png

三、使用

附名词释义:
数据库四大语言:

  • DDL (数据定义语言)
  • DML (数据操纵语言)

数据处理语言 - Data Manipulation Language,在数据库表中更新,增加和删除记录。如 update、insert、delete等,不包含查询。

  • DCL (数据控制语言)

数据控制语言 – Data Control Language,指用于设置用户权限和控制事务语句。如grant、revoke、if…else、while、begin transaction

  • DQL (数据查询语言)

3.1 修改个人信息

登录账户后,可以修改超管的相关信息,设置新密码等。
image.png

3.2 添加用户

在 “管理” 中找到 “用户”,可以添加新用户。
image.png

3.3 自定义SQL审核流程

  • 流程名称 (顾名思义)
  • 阶段名称 (当前设置的流程阶段的名称)
  • 阶段类型 (当前阶段的类型,共分两种:1.审核 2.执行) 每个流程的末端阶段的步骤类型必须为执行类型,否则该流程下的审核工单将无法成功完结并执行
  • 审核人员 (指定当前阶段审核人员范围,可多选)
  • 添加 (点击后将该阶段添加至流程中)

image.png

3.4 配置数据源

在新建数据源中填写相关信息,新建数据源,注意下面的用户名和密码是mysql的。
image.png

新建好后,可以在 “详情” 查看,并配置数据源(排除的数据库),针对用户设置对应数据源的权限
image.png

3.5 设置权限

admin:所有权限(查询,数据更改,表结构变更)
DQL:数据查询权限
DML:数据操作权限(insert、update、delete)
DDL:数据定义权限(添加/删除字段、添加/删除索引等)

点击 “新建权限组”,设置一个名称,并分配对应的权限
对于不同的权限组,可以设置不同的数据源权限
image.png

3.6 设置用户权限

可以给不同的用户设置不同的权限
image.png

3.7 工单申请及审批

  • 工单申请

根据需要选择【DML/DDL/查询】中的一种进行工单申请
image.png

填入数据库、说明及sql语句,右键点击“sql检测”,没有异常即可点击提交
image.png

  • 查看工单申请记录

点击“我的工单”即可看到刚刚提交的
image.png

  • 工单审核及执行

按照审核流程的节点一级一级审批,如果有执行权限,可直接执行工单。
在“审核”一栏点击“工单”,点击需要审批工单后面的“详情”
image.png

在代码栏右键点击“sql检测”后,“同意”按钮会变亮,点击同意即可。
image.png

此时工单会转发到 admin 超管那里,超管用户同意后,工单便会执行(当流程最后节点人员通过后将会自动执行该工单)
再查看“我的工单”会发现已执行完成,整个工单审批流程结束
image.png

3.8 审核规则

默认关闭,可以根据实际需要来打开某些规则。在SQL检测时,将按照设置的规则进行检测。
image.png

3.9 自动任务

配置相关任务后可以对符合条件的SQL语句自动执行,无需执行人手动执行。例如下图对 delete 类的语句自动执行
image.png

3.10 设置

  • 消息推送(钉钉推送、邮件推送等)

以下演示钉钉推送

  1. 在钉钉新建测试群,并添加机器人,因为 yearning 需要填写webhook秘钥,所以安全设置选择“加签”

image.png

  1. 在设置界面,输入 webhook地址 和 webhook秘钥 ,点击“hook测试”,看到钉钉群有新消息,即说明设置成功

image.png
image.png

  1. 用户提交工单审核进行测试,钉钉群可以正常接收到推送

image.png

  • 设置LDAP登录

image.png

  • 进阶设置:可以设置查询最大limit数,自定义环境(默认定义了Aliyun、AWS)等
  • 数据清除:可以按时间删除工单记录

image.png

参考文档:
简介 · GitBook
安装部署Yearning_yearning部署_keke_俩个科的博客-CSDN博客
安装 - 《Yearning v3.0 教程》 - 书栈网 · BookStack
Yearning安装及使用 - coolw - 博客园

小讯
上一篇 2025-02-22 12:30
下一篇 2025-02-06 08:36

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/64862.html