本发明涉及计算机程序领域,具体涉及一种安全访问数据库的安全接口及其交易流程。
背景技术:
目前,客户端在远程访问数据库服务器时采用直接操作的形式,加大了数据库的危险性,从而很容易导致数据库遭到攻击,造成数据的丢失或泄露。
技术实现要素:
为解决上述问题,本发明提供了一种安全访问数据库的安全接口及其交易流程,中间件联网接口程序防止了客户端对数据库进行直接操作,很大程度地提高了数据库的安全性。
为实现上述目的,本发明采取的技术方案为:
一种安全访问数据库的安全接口,包括客户端、中间件联网接口和数据库服务器,中间件联网接口包括通讯层,客户端请求处理层,数据操作层,客户端请求处理层采用多线程并发处理客户端请求,当请求繁忙时将客户端请求信息进行缓冲,以防止丢失请求;将客户端软件送来的交易包拆包后送本地软件高层,并将本地软件高层送来的数据打包发送至客户端软件。为了保证数据库中数据的安全,并不是所有的请求都可以处理。如修改、删除等请求是不能接受的。因此必须实现在数据库服务器和客户端之间建立一些约定,也就是通信协议。
上述安全访问数据库的安全接口的交易流程,包括如下步骤:
S1、由客户端程序向中间件应用程序程序发起连接请求;
S2、连接成功后,利客户端程序方能向中间件应用接口程序提交交易包;
S3、中间件应用程序获得客户端传递下来的交易包;并作相应的变换、处理,在后台对数据库进行操作处理;
S4、后台处理完毕,中间件应用程序根据处理结果,进行适当转换后返回处理结果包。
S5、客户端接收到中间件应用程序返回的处理结果包,在终端进行显示或其他操作。
本发明具有以下有益效果:
客户端在远程访问数据库服务器时,中间件联网接口程序防止了客户端对数据库进行直接操作,很大程度地提高了数据库的安全性。
附图说明
图1为本发明实施例一种安全访问数据库的安全接口的请求响应图。
图2为本发明实施例一种安全访问数据库的安全接口的交易流程图。
具体实施方式
为了使本发明的目的及优点更加清楚明白,以下结合实施例对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,本发明实施例提供了一种安全访问数据库的安全接口,包括客户端、中间件联网接口和数据库服务器,中间件联网接口包括通讯层,客户端请求处理层,数据操作层,客户端请求处理层采用多线程并发处理客户端请求,当请求繁忙时将客户端请求信息进行缓冲,以防止丢失请求;将客户端软件送来的交易包拆包后送本地软件高层,并将本地软件高层送来的数据打包发送至客户端软件。为了保证数据库中数据的安全,并不是所有的请求都可以处理。如修改、删除等请求是不能接受的。因此必须实现在数据库服务器和客户端之间建立一些约定,也就是通信协议。
如图2所示,本具体实施采用同步短联接,中间件应用作为服务器方,客户方通过中间件访问服务器方,交易流程包括如下步骤:
S1、由客户端程序向中间件应用程序程序发起连接请求;
S2、连接成功后,利客户端程序方能向中间件应用接口程序提交交易包;
S3、中间件应用程序获得客户端传递下来的交易包;并作相应的变换、处理,在后台对数据库进行操作处理;
S4、后台处理完毕,中间件应用程序根据处理结果,进行适当转换后返回处理结果包。
S5、客户端接收到中间件应用程序返回的处理结果包,在终端进行显示或其他操作。
所述服务端中间件用于解决客户端的连接请求,并对客户端的请求进行相应的应答;具体的,通过以下步骤实现:
创建一个新的Socket;
将该socket绑定到主机上面的某个端口;
启动监听,并且设置一个最大的队列长度;
开始接受客户端连接请求;
接收客户端的消息;
准备接受下一个客户端请求。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。