-
Notifications
You must be signed in to change notification settings - Fork 1.8k
Closed
Labels
enhancementNew feature or requestNew feature or request
Description
目前遇到的问题/使用障碍
表权限
关于表权限检验,目前是利用inception的语法树打印获取SQL包含的表信息,再按照用户拥有的权限列表进行判断,不支持子查询的解析
查询脱敏
包括MySQL和MsSQL的实现,相关配置项:QUERY_CHECK说明
MySQL查询脱敏需要先解析语句,获取select信息,提取脱敏字段,再针对脱敏字段去正则匹配脱敏规则,进行字符替换
MsSQL的实现则相对简单,不需要解析语句,直接对所有查询结果数据进行匹配替换
解析语句比较精准,没有误伤,但是语法解析相对困难,会存在比较多的限制
希望如何解决/实现它
其他信息
语法解析相关开源库
- 小米SOAR:go实现,结合了vitess的语法解析库和TIDB语法解析库,仅支持mysql
- Inception:c实现,包含语法树打印功能,仅支持mysql
- Druid:java实现,SQL Parser模块,支持数据库多
- sqlparser:python实现,需要自己遍历tokens
- moz-sql-parser:python实现,直接输出语法树
xhhao4, pabapa and huangyue5207
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request