-
Notifications
You must be signed in to change notification settings - Fork 1.7k
configuration
goInception的连接地址,用于MySQL审核执行,docker-compose启动的请配置为容器名,比如goinception,参考文档:https://github.com/hanchuanchuan/goInception
goInception的连接端口,默认4000
goInception的备份库链接HOST,用于页面展示回滚语句,和goInception配置文件config.toml内的backup_host保持一致
goInception的备份库链接端口,和goInception和配置文件config.toml内的backup_port保持一致
goInception/Inception的备份库链接用户,和goInception和配置文件config.toml内的backup_user保持一致
-- 建议赋予用户权限
GRANT SELECT, INSERT, CREATE ON *.* TO 'inception_bak'
goInception的备份库链接用户,和goInception和配置文件config.toml内的backup_password保持一致
需要注意的是,该配置信息,仅仅用于archery从备份库查询回滚语句使用,该配置信息不会被goInception服务使用,goInception连接备份库使用的数据库连接信息应在其自身的config.toml中配置。
高危SQL语句正则判断条件,用于控制禁止提交的语句,匹配的语句会禁止提交,例如^truncate|^rename|^delete
则会禁止提交清空表、修改表名、删除操作的SQL语句,前端展现如下
用于控制自动驳回的等级,驳回的工单不会通知审核人,会系统直接审核不通过。1表示SQL上线审核出现警告信息就驳回,2和空表示出现错误才驳回,其他设置表示不驳回,审核规则请参考Inception所支持的参数变量,前端展现如下
是否开启备份选项,未开启时提交SQL工单,将不会显示是否备份选择项,系统会强制备份
是否开启SQL上线自动审批,开启自动审批后,当提交的SQL语句不匹配AUTO_REVIEW_REGEX规则,并且update语句的总影响行数低于MAX_UPDATE_ROWS时,系统则会自动审批通过,前端展现如下
正则条件,用于过滤部分需要人工审核的语句,开启自动审批后,当工单中存在匹配的语句时则需要人工审批,例如^create
则表示建表语句需要人工审批
自动审批允许工单最大更新行数,系统会遍历工单内所有update语句,使用explain预估影响行数,当影响函数超过该值时则工单需要人工审批
是否开启SQL上线手工执行确认,开启后在审核通过的工单详情中会出现手工确认按钮,可以仅仅依靠Archery走工单流程,DBA线下手动执行语句并且确认执行结束
相关issues: https://github.com/hhyo/Archery/issues/145
是否开启SQL查询脱敏的Inception检测,平台的SQL查询功能依靠Inception的语法树打印来解析查询语句中包含的库、表、字段信息,从而进行数据脱敏
- 开启QUERY_CHECK后,如果遇到Inception无法解析的语句,则会直接抛出错误信息,禁止查询
- 关闭QUERY_CHECK后,如果遇到Inception无法解析的语句,系统不再进行数据脱敏,会有数据泄露的风险,请谨慎选择
- 动态脱敏不支持的语法:嵌套子查询、部分非单字段函数,如
concat(phone,',')、max(id+num)
是否开启动态脱敏,会利用inception语法树打印,结合后台设置的脱敏字段和脱敏规则,对查询数据进行脱敏。遇到无法解析的语句是报错还是返回未脱敏的数据同样由QUERY_CHECK参数控制
- 正常脱敏:
- 开启QUERY_CHECK后执行不支持语句
- 关闭QUERY_CHECK后执行不支持语句
在线查询超时时间阈值,单位秒,默认60,超时的语句会被终止并返回提示信息,目前仅支持MySQL
超级管理员的查询限制行数,超级管理员查询数据时不做权限校验,仅由该参数设置最大行数
SQLAdvisor的可执行文件路径,路径需要完整,docker镜像内已经集成
- 1.4.0以前的docker版本配置成
/opt/sqladvisor
- 1.4.0以以后的docker版本配置成
/opt/archery/src/plugins/sqladvisor
SOAR的可执行文件路径,路径需要完整,docker镜像内已经集成,docker镜像内已经集成
- 1.4.0以前的docker版本配置成
/opt/soar
- 1.4.0以以后的docker版本配置成
/opt/archery/src/plugins/soar
参考SOAR文档:命令行参数配置DSN
系统首页地址, 用于钉钉和邮件发送链接使用,如https://archery.xx.com/
DDL工单通知权限组名,对应权限组管理页面的名称,为空则不通知,仅DDL工单执行完毕时会进行通知
是否开启邮件通知
是否使用SSL连接
邮件SMTP服务地址,可参考各邮箱对应的设置帮助,例如QQ邮箱的如何使用IMAP服务?
邮件SMTP服务端口
邮件用户名
邮件密码,一般为生成的授权码
是否开启钉钉通知,开启后需要配置资源组的机器人webhook连接,资源组内的所有通知都会通过机器人推送
是否开启钉钉个人通知,使用微应用+工作通知实现
参考企业微信接入开发文档,配置成功后消息会通过企业微信通知
实例关联RDS实例ID后,会调用RDS接口获取慢日志、进程、表空间,其中进程和表空间的获取需要管理权限的key
系统首页路径,默认是SQL工单页面
BINLOG2SQL调用路径,用于实现binlog2sql解析的功能,docker镜像内已经集成
- docker部署请配置为
/opt/archery/src/plugins/binlog2sql/binlog2sql.py
默认权限组名,新用户首次登录自动关联, 老用户请手动配置
默认资源组名,新用户首次登录自动关联, 老用户请手动配置
账户登录失败锁定时间(秒)
账户登录失败几次锁账户
是否开启注册功能,关闭后将无法自主注册用户
是否开启水印功能