[发明专利]一种解析和还原Caché数据库通讯协议中SQL命令的方法有效
申请号: | 201710328384.3 | 申请日: | 2017-05-11 |
公开(公告)号: | CN107193902B | 公开(公告)日: | 2020-04-17 |
发明(设计)人: | 黎琳;常晓林;李振寰;韩臻;刘吉强 | 申请(专利权)人: | 北京交通大学 |
主分类号: | G06F16/242 | 分类号: | G06F16/242 |
代理公司: | 北京市商泰律师事务所 11255 | 代理人: | 黄晓军 |
地址: | 100044 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 解析 还原 cach 数据库 通讯 协议 sql 命令 方法 | ||
本发明提供了一种解析和还原Caché数据库通讯协议中SQL命令的方法。该方法采用旁路获取网络中客户端向Caché数据库服务器发送的通信协议数据包,读取通讯协议数据包第1至第4个字节的值并赋给变量MsgLength中;跳过8个字节,读取第13、14个字节的值并赋给变量MsgType,判断所述MsgType的值,根据判断结果进行过滤和解析,再根据过滤和解析结果还原出客户端完整的SQL命令。本发明不需要对应用系统进行任何的配置改动和变更,对应用系统的正常运行没有任何影响,可以给用户、应用系统提供商及时了解系统运行状态提供有力的支持,同时可以为Caché数据库细粒度审计、精准化行为回溯、全方位风险控制功能和安全审计功能提供理论基础。
技术领域
本发明涉及计算机应用技术领域,尤其涉及一种解析和还原Caché数据库通讯协议中SQL命令的方法。
背景技术
Caché数据库是美国Intersystems公司产品,新一代超高性能数据库。适合大型应用,且因其速度快、灵活性、接口容易、升级扩容方便等优势,适用于各类应用环境,其市场占有率逐年提升。Caché数据库在国外已有广泛的应用,美国和欧洲医疗系统占有70%的市场份额,国内的医疗和金融企业已经开始投入使用Caché数据库。
对于数据库管理来说,保护数据不受内部和外部侵害是一项重要工作。尤其是在Caché客户机较多时,访问量和数据传输量都较大,客户机与服务器之间的通讯过程几乎是一个黑匣子,在应用系统发生异常时,很难在系统层面对Caché数据库的访问使用情况进行全面的分析。Caché客户端对于Caché的操作直接关系到数据库的安全,所以对用户数据库业务进行在线审计、行为回溯和风险控制有着十分重要的意义。
发明内容
本发明提供了一种解析和还原Caché数据库通讯协议中SQL命令的方法,通过对使用TCP/IP协议传输的Caché数据库通讯协议51版本数据包进行旁路监听和解析,处理之后就得到每位用户的SQL操作命令。
为了实现上述目的,本发明采取了如下技术方案。
一种解析和还原Caché数据库通讯协议中SQL命令的方法,其特征在于,包括:
采用旁路获取网络中客户端向Caché数据库服务器发送的通信协议数据包;
将获取到的所述通信协议数据包的数据部分进行过滤和解析;
根据所述的过滤和解析结果还原出客户端完整的SQL命令。
所述的将获取到的所述通信协议数据包的数据部分进行过滤和解析,包括:
步骤1:读取Caché数据库通讯协议数据包第1至第4个字节的值并赋给变量MsgLength中;
步骤2:跳过8个字节,读取第13、14个字节的值并赋给变量MsgType,判断所述MsgType的值,若所述MsgType的值是0x440x51,则所述通信协议数据包为select语句,进行M1模块处理,若所述MsgType的值不是0x440x51,则执行步骤3;
步骤3:若所述MsgType的值是0x440x55,则所述通信协议数据包为除select语句外的sql语句,进行M2模块处理,若MsgType的值不是0x440x55,则所述通信协议数据包不是sql语句数据包,结束流程。
所述的M1模块处理步骤为:
(11)读取Caché数据包data部分第4个字节的值并赋给变量sqlLength中;
(12)定义指针sqlstart指向Caché数据包data部分第6个字节,sqlend=sqlstart+sqlLength-2;
(13)读取指针sqlstart到指针sqlend指向的字符串为select语句并保存;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京交通大学,未经北京交通大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710328384.3/2.html,转载请声明来源钻瓜专利网。