[发明专利]一种基于代理模式的分布式数据库SQL审核拦截方法及装置有效
申请号: | 202110509145.4 | 申请日: | 2021-05-11 |
公开(公告)号: | CN113127520B | 公开(公告)日: | 2023-07-21 |
发明(设计)人: | 肖永韧;程建敏;胡飞飞;徐真;朱明辉 | 申请(专利权)人: | 中国电信股份有限公司江西分公司 |
主分类号: | G06F16/2455 | 分类号: | G06F16/2455;G06F16/2453;G06F16/27;G06F16/28;G06F16/2458;G06F16/248 |
代理公司: | 北京权智天下知识产权代理事务所(普通合伙) 11638 | 代理人: | 王新爱 |
地址: | 330046 江*** | 国省代码: | 江西;36 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 代理 模式 分布式 数据库 sql 审核 拦截 方法 装置 | ||
本发明公开了一种基于代理模式的分布式数据库SQL审核拦截方法及装置,包括审核代理单元,语句审核判断单元,代理语句拦截单元,和代理语句透传单元等,将上述单元进行产品融合,最终实现用户可以通过常用数据库客户端执行分布式数据库操作时,保证不符合审核规范的语句无法在目标数据库执行,并按照数据库协议反馈违规内容。若符合规范则不拦截,代理节点将透传语句至目标分布式数据库,并反馈客户端其语句执行结果,整个过程对使用者来说是透明的。本次发明“零”嵌入、自动化运维,可极大的提升用户使用便捷性,提高软件项目SQL语句审核效率,并从根本上限制用户无法在目标数据库执行违规语句,从而保障分布式数据库的安全、稳定运行。
技术领域
本发明涉及数据库技术领域,具体为一种基于代理模式的分布式数据库SQL审核拦截方法及装置。
背景技术
随着企业推进数字化转型,越来越多企业由传统架构转向分布式云化架构,针对规模化多节点的分布式数据库的接入,不规范的数据库操作容易导致操作错误、事务响应超时、数据库故障等问题,直接影响整个应用的可用性。为了减少上述不良影响,在SQL语句在分布式数据库执行之前,需对SQL语句的规范性进行审核,对执行效率不佳或者不规范的语句及时进行拦截。目前常见的数据库审核SQL技术是一种基于工单、自定义执行命令、和自定义程序接口的审核模式,且主要是针对非分布式数据库的,一方面,该技术模式比较适合对数据库少量的操作,当遇到大批量、频繁的数据操作时,就会暴露其操作可用性短版,无法满足高频繁交互的场景需求,并且自定义交互模式,导致用户需要频繁切换或无法使用常用的数据库客户端;另一方面,基于原有审核模式,效率低,以最常用的inception为例,其每一条语句都需要建立一次审核短连接,提高了数据库连接开销,从而影响了数据库审核效率。
发明内容
本发明的目的在于提供一种基于代理模式的分布式数据库SQL审核拦截方法及装置,以解决上述背景技术中提出的问题。
为实现上述目的,本发明提供如下技术方案:一种基于代理模式的分布式数据库SQL审核拦截装置,包括审核代理单元、语句审核判断单元、代理语句拦截单元、和代理语句透传单元,具体是指用户使用数据库客户端执行语句,通过审核代理单元接受客户端发送的数据库操作请求并进行解析,通过语句审核判断单元对代理单元获的得用户和SQL语句后对其进行审核判断,语句审核判断单元随着审核结果的判断,若不符合审核规范则接入代理语句拦截单元对客户端请求进行拦截,反馈违反的审核规范内容;若符合审核规范则接入代理透传单元,将客户端请求透传至目标分布式数据库,反馈客户端语句执行结果。
优选的,还包括代理节点配置管理单元,代理节点配置管理单元包括审核端口管理、审核用户管理、目标分布式数据库地址和端口、业务相关属性等;然后针对不同间的审核代理节点通过审核服务端进行审核规则配置管理,构建审核规则管理单元,审核代理节点通过监听服务端审核规则配置信息变化,对节点内配置信息进行同步;审核规则涵盖语句模型规范、语句性能限制,审核服务端其主要包括:审核代理配置管理单元、审核规则管理管理、审核记录单元;审核记录单元主要为用户提供审核记录快速检索和统计分析功能。
优选的,还包括审核规则管理单元,审核规则管理单元对应的规则对客户端操作的语句进行审核判断功能,构建审核判断单元,审核判断单元主要为审核代理节点提供能力,并主要针对兼容MySQL协议的分布式数据库,审核判断单元主要依托数据库代理端单元接受数据库客户端待执行的语句;并通过网络协议解析单元对所述待执行的语句进行解析和审核;若所述待执行语句符合规范,则透传语句至目标数据库并反馈查询结果至数据库客户端;若所述待执行语句不符合规范,则拦截所述待执行语句并反馈语句违规内容至数据库客户端,审核代理节点通过代理连接池和审核连接池提高代理审核能力。
优选的,审核判断单元将审核结果通过审核结果单元发送单元进行采集上报,将审核判断单元审核过的审核语句结果通过消息队里单元,基于消息中间件kafka接收存储,并基于流计算和多线程批量汇聚至集中全文检索数据库,构建统一存储及分析单元;存储及分析单元主要为审核结果单元服务,根据条件从存储及分析单元中查询出符合的结果集。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国电信股份有限公司江西分公司,未经中国电信股份有限公司江西分公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110509145.4/2.html,转载请声明来源钻瓜专利网。