CN110795413A - 一种带有日志记录功能的数据库操作接口服务系统 - Google Patents

一种带有日志记录功能的数据库操作接口服务系统 Download PDF

Info

Publication number
CN110795413A
CN110795413A CN201911044639.9A CN201911044639A CN110795413A CN 110795413 A CN110795413 A CN 110795413A CN 201911044639 A CN201911044639 A CN 201911044639A CN 110795413 A CN110795413 A CN 110795413A
Authority
CN
China
Prior art keywords
database
data
log
module
client
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201911044639.9A
Other languages
English (en)
Inventor
梁启昌
崔峰赫
张涛
豆建双
李小华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhuhai Gang Lian Technology Co Ltd
Original Assignee
Zhuhai Gang Lian Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhuhai Gang Lian Technology Co Ltd filed Critical Zhuhai Gang Lian Technology Co Ltd
Priority to CN201911044639.9A priority Critical patent/CN110795413A/zh
Publication of CN110795413A publication Critical patent/CN110795413A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/1805Append-only file systems, e.g. using logs or journals to store data
    • G06F16/1815Journaling file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2358Change logging, detection, and notification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

一种带有日志记录功能的数据库操作接口服务系统,包括网络数据对接模块、数据库操作模块、数据日志监控模块和通用日志解析模块;提供了客户端与数据库之间连接交互的专用接口,并提供了用户操作日志的记录方法。本发明规避了使用外网端口的安全风险;摒弃了传统的C/S架构软件在操作Oracle数据库时常用的Oracle客户端直连方式,以通用的网络服务接口实现与数据库的交互,从而提升了软件系统整体的安全性、并发性、可复用性,降低软件项目的耦合度;实现了操作日志的记录,并且可以对数据库的所有变更进行全程监控。

Description

一种带有日志记录功能的数据库操作接口服务系统
技术领域
本发明涉及网络交互领域,尤其涉及一种带有日志记录功能的数据库操作接口服务系统。
背景技术
目前C/S项目的WINFORM系统都是Oracle数据库提供的dll进行数据库直连,因此当客户使用了云服务器,整个系统的性能都会有一定程度的降低,而且C/S系统目前的技术方案也无法记录每个用户的操作日志。目前的C/S系统框架在DB层对于数据库的操作是通过Oracle客户端的Oci.dll、Oracle.DataAccess.dll等DLL进行数据库的直连操作,每一次的数据库操作都是通过ORACLE提供的方法进行操作。当使用了云服务器,就需要开放数据库的外网端口,这对数据库有一定的安全风险。但在现有的技术框架下只能开放外网端口。
发明内容
本发明的目的在于提供一种带有日志记录功能的数据库操作接口服务系统,从而解决现有技术中存在的前述问题。
为了实现上述目的,本发明采用的技术方案如下:
一种带有日志记录功能的数据库操作接口服务系统,包括网络数据对接模块、数据库操作模块、数据日志监控模块和通用日志解析模块;所述各模块的工作步骤为:
S1、所述网络数据对接模块中构建与C/S系统客户端交互的网络服务,建立操作请求接口;
S2、所述网络数据对接模块对客户端的请求数据进行解密并进行校验,若校验失败,则向所述客户端反馈失败信息;若校验成功,则解析所述请求数据、生成数据库操作任务,并创建消息任务队列且推送至所述数据库操作模块;
S3、所述数据日志监控模块对所述数据库对接模块生成的所述数据库操作任务进行监控;
S4、所述数据日志监控模块拦截所述数据库操作任务,捕获任务内容,根据此创建数据日志;
S5、所述数据日志监控模块将所述数据日志存放至服务器指定的物理路径;
S6、所述通用日志解析模块建立日志解析终端,对需要进行日志解析的数据库配置参数;
S7、所述通用日志解析模块根据所述配置参数定时遍历所述物理路径,对新的所述数据日志进行解析,并将解析结果存入所述通用日志解析模块的数据库中;
S8、所述通用日志解析模块中建立日志查看分析终端,查看所述数据日志中数据的变更记录,并作出标识;
S9、所述数据库操作模块从所述消息任务队列中捕获所述数据库操作任务;
S10、所述数据库操作模块调用数据库连接所述客户端,通过所述客户端对数据库中的数据进行操作,操作后断开数据库与所述客户端之间的连接;
S11、所述数据库操作模块生成操作结果,创建数据库操作结果队列,并推送回所述网络数据对接模块;
S12、所述网络数据对接模块从所述数据库操作结果队列中获得响应信息,并将所述响应信息发送至所述客户端。
优选的,所述网络服务通过Asp.Net Web API进行构建。
优选的,所述网络服务使用Http协议,对所述客户端提交的所述操作请求进行响应。
优选的,所述操作请求接口的明文数据格式为:所述客户端的识别码、所述操作请求的内容和所述操作请求内容的MD5散列值;上述数据通过RSA算法进行非对称加密。
优选的,所述客户端内存放有所述加密的公钥,所述网络数据对接模块内存放有所述加密的私钥,所述私钥不允许所述公钥解密;所述操作请求接口的请求接口为加密后的密文。
优选的,步骤S10中的所述操作的类型包括:插入数据、删除数据、更新数据、查询数据和执行存储过程。
优选的,所述日志文件以json格式进行从存储,所述包括需要操作的数据表的表名、主键值、字段值、操作类型、发送请求的操作人和发送请求的客户端IP信息。
优选的,所述配置参数包括数据库信息和日志存放路径。
本发明的有益效果是:本发明所述的带有日志记录功能的数据库操作接口服务系统,针对数据库的操作提供了装用的接口,规避了使用外网端口的安全风险;摒弃了传统的C/S架构软件在操作Oracle数据库时常用的Oracle客户端直连方式,以通用的网络服务接口实现与数据库的交互,从而提升了软件系统整体的安全性、并发性、可复用性,降低软件项目的耦合度;本发明增加了数据操作日志系统,实现了操作日志的记录,并且可以对数据库的所有变更进行全程监控。
附图说明
图1是系统工作步骤流程图;
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施方式仅仅用以解释本发明,并不用于限定本发明。
一种带有日志记录功能的数据库操作接口服务系统,包括网络数据对接模块、数据库操作模块、数据日志监控模块和通用日志解析模块;上述四个模块的工作内容为:
网络数据对接模块:使用Asp.Net Web API构建一套统一的用于与C/S系统客户端进行交互的网络服务。所述网络服务使用Http协议作为数据请求接口,对客户端提交的数据库操作请求进行相应,所有的数据操作均需要通过这一唯一入口进行实现;所述数据请求接口的明文数据格式为:客户端识别码+请求操作的内容+请求操作内容的MD5散列值。所述数据将会通过RSA算法进行非对称加密,加密的公钥存放于客户端,私钥存放于网络对接模块,且不允许公钥解密。所述数据请求接口需以加密后的密文作为请求参数,以此保证安全性;对接模块通过自身持有的私钥将请求数据解密后,校验客户端识别码以及请求操作内容的MD5散列值是否正确,若校验失败则通知客户端失败信息;若校验成功则解析请求操作的操作类型及操作参数,生成数据库操作任务,使用消息队列RabbitMQ创建此消息任务队列并推送至数据库操作模块执行操作;从数据库操作结果队列中获得响应信息,并推送至发送请求对应的客户端。
数据库操作模块:设置线程池,分配多个线程从所述消息任务队列中捕获需要执行的数据库操作任务;识别所述请求操作的内容,通过工厂模式分配对应的数据库操作方法,调用数据库连接客户端进行数据操作,操作后立即关闭数据库连接;所述数据操作类型包括:插入数据、更新数据、删除数据、查询数据、执行存储过程;将执行的结果生成操作结果,用消息队列RabbitMQ创建数据库操作结果队列并推送回所述网络数据对接模块,进行Http响应。
数据日志监控模块:设置数据操作监视器,监控每一个通过所述网络数据对接模块生成的数据库操作任务;拦截任务,捕获任务内容,调用异步函数开始数据日志的创建;日志的创建:根据所述数据库操作任务的内容,识别出需要操作的数据表的表名、主键值、字段值、操作类型、发送请求的操作人、发送请求的客户端IP信息,并将以上信息以json格式存储为日志文件,存放至服务器的指定物理路径。
通用日志解析模块:建立日志解析监控终端,用于配置需要进行日志解析的数据库的相关参数,包括数据库信息、日志文件存放路径等;开发Window系统服务,根据所述配置信息定时遍历物理路径,并解析发现的新建立的日志文件,解析后的内容将存入日志解析模块的数据库中;建立日志查看分析终端,根据数据库名、数据表名、主键值等信息,查看一条数据全部的插入、更新、删除记录,并标识出每次修改中发生变更的字段。
所述各模块的工作步骤如图1所示:
S1、所述网络数据对接模块中构建与C/S系统客户端交互的网络服务,建立操作请求接口;
S2、所述网络数据对接模块对客户端的请求数据进行解密并进行校验,若校验失败,则向所述客户端反馈失败信息;若校验成功,则解析所述请求数据、生成数据库操作任务,并创建消息任务队列且推送至所述数据库操作模块;
S3、所述数据日志监控模块对所述数据库对接模块生成的所述数据库操作任务进行监控;
S4、所述数据日志监控模块拦截所述数据库操作任务,捕获任务内容,根据此创建数据日志;
S5、所述数据日志监控模块将所述数据日志存放至服务器指定的物理路径;
S6、所述通用日志解析模块建立日志解析终端,对需要进行日志解析的数据库配置参数;
S7、所述通用日志解析模块根据所述配置参数定时遍历所述物理路径,对新的所述数据日志进行解析,并将解析结果存入所述通用日志解析模块的数据库中;
S8、所述通用日志解析模块中建立日志查看分析终端,查看所述数据日志中数据的变更记录,并作出标识;
S9、所述数据库操作模块从所述消息任务队列中捕获所述数据库操作任务;
S10、所述数据库操作模块调用数据库连接所述客户端,通过所述客户端对数据库中的数据进行操作,操作后断开数据库与所述客户端之间的连接;
S11、所述数据库操作模块生成操作结果,创建数据库操作结果队列,并推送回所述网络数据对接模块;
S12、所述网络数据对接模块从所述数据库操作结果队列中获得响应信息,并将所述相应信息发送至所述客户端。
通过采用本发明公开的上述技术方案,得到了如下有益的效果:
本发明所述的带有日志记录功能的数据库操作接口服务系统,针对数据库的操作提供了装用的接口,规避了使用外网端口的安全风险;摒弃了传统的C/S架构软件在操作Oracle数据库时常用的Oracle客户端直连方式,以通用的网络服务接口实现与数据库的交互,从而提升了软件系统整体的安全性、并发性、可复用性,降低软件项目的耦合度;本发明增加了数据操作日志系统,实现了操作日志的记录,并且可以对数据库的所有变更进行全程监控。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视本发明的保护范围。

Claims (8)

1.一种带有日志记录功能的数据库操作接口服务系统,其特征在于,包括网络数据对接模块、数据库操作模块、数据日志监控模块和通用日志解析模块;所述各模块的工作步骤为:
S1、所述网络数据对接模块中构建与C/S系统客户端交互的网络服务,建立操作请求接口;
S2、所述网络数据对接模块对客户端的请求数据进行解密并进行校验,若校验失败,则向所述客户端反馈失败信息;若校验成功,则解析所述请求数据、生成数据库操作任务,并创建消息任务队列且推送至所述数据库操作模块;
S3、所述数据日志监控模块对所述数据库对接模块生成的所述数据库操作任务进行监控;
S4、所述数据日志监控模块拦截所述数据库操作任务,捕获任务内容,根据此创建数据日志;
S5、所述数据日志监控模块将所述数据日志存放至服务器指定的物理路径;
S6、所述通用日志解析模块建立日志解析终端,对需要进行日志解析的数据库配置参数;
S7、所述通用日志解析模块根据所述配置参数定时遍历所述物理路径,对新的所述数据日志进行解析,并将解析结果存入所述通用日志解析模块的数据库中;
S8、所述通用日志解析模块中建立日志查看分析终端,查看所述数据日志中数据的变更记录,并作出标识;
S9、所述数据库操作模块从所述消息任务队列中捕获所述数据库操作任务;
S10、所述数据库操作模块调用数据库连接所述客户端,通过所述客户端对数据库中的数据进行操作,操作后断开数据库与所述客户端之间的连接;
S11、所述数据库操作模块生成操作结果,创建数据库操作结果队列,并推送回所述网络数据对接模块;
S12、所述网络数据对接模块从所述数据库操作结果队列中获得响应信息,并将所述响应信息发送至所述客户端。
2.根据权利要求1所述的带有日志记录功能的数据库操作接口服务系统,其特征在于,所述网络服务通过Asp.Net Web API进行构建。
3.根据权利要求1所述的带有日志记录功能的数据库操作接口服务系统,其特征在于,所述网络服务使用Http协议,对所述客户端提交的所述操作请求进行响应。
4.根据权利要求1所述的带有日志记录功能的数据库操作接口服务系统,其特征在于,所述操作请求接口的明文数据格式为:所述客户端的识别码、所述操作请求的内容和所述操作请求内容的MD5散列值;上述数据通过RSA算法进行非对称加密。
5.根据权利要求1所述的带有日志记录功能的数据库操作接口服务系统,其特征在于,所述客户端内存放有所述加密的公钥,所述网络数据对接模块内存放有所述加密的私钥,所述私钥不允许所述公钥解密;所述操作请求接口的请求接口为加密后的密文。
6.根据权利要求1所述的带有日志记录功能的数据库操作接口服务系统,其特征在于,步骤S10中的所述操作的类型包括:插入数据、删除数据、更新数据、查询数据和执行存储过程。
7.根据权利要求1所述的带有日志记录功能的数据库操作接口服务系统,其特征在于,所述日志文件以json格式进行从存储,所述包括需要操作的数据表的表名、主键值、字段值、操作类型、发送请求的操作人和发送请求的客户端IP信息。
8.根据权利要求1所述的带有日志记录功能的数据库操作接口服务系统,其特征在于,所述配置参数包括数据库信息和日志存放路径。
CN201911044639.9A 2019-10-30 2019-10-30 一种带有日志记录功能的数据库操作接口服务系统 Pending CN110795413A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911044639.9A CN110795413A (zh) 2019-10-30 2019-10-30 一种带有日志记录功能的数据库操作接口服务系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911044639.9A CN110795413A (zh) 2019-10-30 2019-10-30 一种带有日志记录功能的数据库操作接口服务系统

Publications (1)

Publication Number Publication Date
CN110795413A true CN110795413A (zh) 2020-02-14

Family

ID=69442084

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911044639.9A Pending CN110795413A (zh) 2019-10-30 2019-10-30 一种带有日志记录功能的数据库操作接口服务系统

Country Status (1)

Country Link
CN (1) CN110795413A (zh)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101710332A (zh) * 2009-11-13 2010-05-19 广州从兴电子开发有限公司 一种事务日志通知内存数据库内容变化的方法及系统
CN102081611A (zh) * 2009-11-26 2011-06-01 中兴通讯股份有限公司 一种主、备网管系统数据库同步的实现方法及装置
CN103391185A (zh) * 2013-08-12 2013-11-13 北京泰乐德信息技术有限公司 一种轨道交通监测数据的云安全存储和处理方法及系统
CN104657366A (zh) * 2013-11-18 2015-05-27 深圳市腾讯计算机系统有限公司 海量日志写入数据库的方法、装置和日志容灾系统
CA2952971A1 (en) * 2014-06-26 2015-12-30 Amazon Technologies, Inc. Multi-database log with multi-item transaction support
CN105872094A (zh) * 2016-05-31 2016-08-17 山东大学 一种基于soa的服务机器人云平台接口系统及方法
CN106126551A (zh) * 2016-06-13 2016-11-16 浪潮电子信息产业股份有限公司 一种Hbase数据库访问日志的生成方法、装置及系统
CN106682119A (zh) * 2016-12-08 2017-05-17 杭州销冠网络科技有限公司 基于http服务切面与日志系统的异步数据同步方法和系统
CN107153539A (zh) * 2017-04-18 2017-09-12 北京思特奇信息技术股份有限公司 一种文件接口系统

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101710332A (zh) * 2009-11-13 2010-05-19 广州从兴电子开发有限公司 一种事务日志通知内存数据库内容变化的方法及系统
CN102081611A (zh) * 2009-11-26 2011-06-01 中兴通讯股份有限公司 一种主、备网管系统数据库同步的实现方法及装置
CN103391185A (zh) * 2013-08-12 2013-11-13 北京泰乐德信息技术有限公司 一种轨道交通监测数据的云安全存储和处理方法及系统
CN104657366A (zh) * 2013-11-18 2015-05-27 深圳市腾讯计算机系统有限公司 海量日志写入数据库的方法、装置和日志容灾系统
CA2952971A1 (en) * 2014-06-26 2015-12-30 Amazon Technologies, Inc. Multi-database log with multi-item transaction support
CN105872094A (zh) * 2016-05-31 2016-08-17 山东大学 一种基于soa的服务机器人云平台接口系统及方法
CN106126551A (zh) * 2016-06-13 2016-11-16 浪潮电子信息产业股份有限公司 一种Hbase数据库访问日志的生成方法、装置及系统
CN106682119A (zh) * 2016-12-08 2017-05-17 杭州销冠网络科技有限公司 基于http服务切面与日志系统的异步数据同步方法和系统
CN107153539A (zh) * 2017-04-18 2017-09-12 北京思特奇信息技术股份有限公司 一种文件接口系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ALINA CORSO-RADU 等: "The ELisA facility - RESTful API and client libraries", 《 2013 IEEE NUCLEAR SCIENCE SYMPOSIUM AND MEDICAL IMAGING CONFERENCE (2013 NSS/MIC)》 *
桑柏嵩: "Agent的网络安全日志收集系统设计与实现", 《中国优秀硕士学位论文全文数据库(信息科技辑)》 *

Similar Documents

Publication Publication Date Title
US10693916B2 (en) Restrictions on use of a key
CN107924411B (zh) 一种事务系统中ui状态的恢复的方法和系统
US10013668B2 (en) Secure storage of enterprise certificates for cloud services
US9716728B1 (en) Instant data security in untrusted environments
US10701096B1 (en) Systems and methods for anomaly detection on core banking systems
US20150326425A1 (en) Recording, analyzing, and restoring network states in software-defined networks
US20070011450A1 (en) System and method for concurrent discovery and survey of networked devices
US20120254762A1 (en) Virtual mobile management - remote control
CN105187372A (zh) 一种基于移动应用入口的数据处理方法、装置和系统
US20080016157A1 (en) Method and system for controlling and monitoring an apparatus from a remote computer using session initiation protocol (sip)
CN110138779B (zh) 一种基于多协议反向代理的Hadoop平台安全管控方法
CN109472130A (zh) Linux密码管理方法、中控机、可读存储介质
CN108289074B (zh) 用户账号登录方法及装置
CN111382985A (zh) 待办消息集成推送系统和工作方法
CN114448654B (zh) 一种基于区块链的分布式可信审计安全存证方法
CN115118705A (zh) 一种基于微服务的工业边缘管控平台
CN115941224A (zh) 一种网络访问信息管理方法、装置和计算机可读存储介质
CN110795413A (zh) 一种带有日志记录功能的数据库操作接口服务系统
WO2016101424A1 (zh) 一种实现终端业务信息处理的方法及装置
CN114095154B (zh) 一种App登录的动态口令实现方法、装置、设备和介质
CN115865529B (zh) 嵌入式通信总线的控制方法、装置、终端设备及存储介质
CN112738008B (zh) 信息同步变更方法、装置、计算机以及可读存储介质
CN115239261A (zh) 账号登录方法、装置、设备以及介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20200214