一种连接建立的方法、客户端、服务端、设备及存储介质技术

技术编号:33128336 阅读:28 留言:0更新日期:2022-04-17 00:41
本发明专利技术公开了一种连接建立的方法、客户端、服务端、设备及存储介质,用以解决现有技术中存在的服务组件与数据库建立连接的安全性较低的技术问题,该方法包括:接收第一随机字符串密文;其中,第一随机字符串密文是客户端中的服务组件用第一用户密码对服务端发送的随机字符串进行加密后得到的,服务端中部署安全服务端及数据库;在确定第一随机字符串密文可信后,将第一随机字符串注册到可信密文列表中;检测第一随机字符串密文是否存在于可信密文列表,若存在则建立服务组件与安全代理服务端的连接,以及安全代理服务端与数据库的连接,安全代理服务端用于实现与被代理的数据库的握手认证协议以及代理数据库的功能。的握手认证协议以及代理数据库的功能。的握手认证协议以及代理数据库的功能。

【技术实现步骤摘要】
一种连接建立的方法、客户端、服务端、设备及存储介质


[0001]本专利技术涉及数据库安全访问领域,尤其是涉及一种连接建立的方法、客户端、服务端、设备及存储介质。

技术介绍

[0002]目前,很多服务组件都需要依赖数据库,而这些服务组件访问数据库的用户面和密码往往容易暴露,导致存在较大的安全风险。
[0003]例如,zabbix server就需要在配置文件中设置数据库(mysql)服务器的地址、数据库名和用户密码,若zabbix server所在的服务器被黑客侵入,上述通过配置文件拿到了数据库的用户密码等机密信息,就可以继续侵入到数据库造成更大的破坏。因此,许多客户要求不能在配置文件中配置明文的数据库用户密码,但这一般需要修改服务组件的源码才能实现。
[0004]鉴于此,如何提高服务组件与数据库建立连接的安全性,成为一个亟待解决的技术问题。

技术实现思路

[0005]本专利技术提供一种连接建立的方法、客户端、服务端、设备及存储介质,用以解决现有技术中存在的服务组件与数据库建立连接的安全性较低的技术问题。
[0006]第一方面,为解决上述技术问题,本专利技术实施例提供的一种连接建立的方法,应用与安全代理服务端,所述安全代理服务端用于实现与被代理的数据库的握手认证协议以及代理所述数据库的功能,该方法的技术方案如下:
[0007]接收第一随机字符串密文;其中,所述第一随机字符串密文是客户端中的服务组件用第一用户密码对服务端发送的随机字符串进行加密后得到的,所述服务端中部署所述安全服务端及数据库;
[0008]在确定所述第一随机字符串密文可信后,将所述第一随机字符串注册到可信密文列表中;
[0009]检测所述第一随机字符串密文是否存在于所述可信密文列表,若存在则建立所述服务组件与所述安全代理服务端的连接,以及所述安全代理服务端与所述数据库的连接。
[0010]一种可能的实施方式,接收第一随机字符串密文之前,还包括:
[0011]向所述服务组件发送随机字符串,并启动计时器进行计时,以确定所述第一随机字符串密文是否超时接收。
[0012]一种可能的实施方式,在确定所述第一随机字符串密文可信后,将所述第一随机字符串注册到可信密文列表中之前,还包括:
[0013]若确定所述第一随机字符串密文超时接收,则确定所述第一随机字符串密文不可信;
[0014]若确定所述第一随机字符串密文接收未超时,则根据所述第一随机字符串密文的
来源验证所述随机字符串密文是否可信。
[0015]一种可能的实施方式,根据所述第一随机字符串密文的来源验证所述随机字符串是否可信,包括:
[0016]若所述第一随机字符串是从所述服务组件接收到的,则获取本地存储的与所述服务组件对应的第二用户密码;
[0017]用所述第二用户密码对所述随机字符串进行加密,获得第二随机字符串密文;
[0018]判断所述第二随机字符串密文是否与所述第一随机字符串密文一致,若一致则确定所述第一随机字符串可信,否则确定所述第一随机字符串不可信。
[0019]一种可能的实施方式,根据所述第一随机字符串密文的来源验证所述随机字符串是否可信,包括:
[0020]若所述第一随机字符串是从所述安全代理客户端接收到的,确定所述第一随机字符串可信。
[0021]第二方面,本专利技术实施例提供了一种连接建立的方法,应用于安全代理客户端,该方法包括:
[0022]监听进程列表中的服务组件对应的进程是否采用了数据库协议,发送了进行数据库认证的认证数据包;其中,所述进程列表用于设置需要监听的服务组件的进程,所述认证数据包中携带有所述服务组件请求与数据库建立连接所需的第一随机字符串密文及对应的用户名,所述第一随机字符串密文是所述服务组件用第一用户密码对服务端发送的随机字符串进行加密后得到的;
[0023]当监听到所述服务组件发送了所述认证数据包后,获取所述认证数据包,并对所述认证数据包进行解析,从解析后的认证数据包中获取所述第一随机字符串密文;
[0024]将所述第一随机字符串密文注册到安全代理服务端的可信密文列表中,其中,所述安全代理服务端根据所述可信密文列表对所述服务组件进行安全验证,并在所述安全验证通过后建立所述服务组件与所述安全代理服务端的连接,以及所述安全代理服务端与所述数据库的连接,所述安全代理服务端用于实现与所述数据库的握手认证协议以及代理所述数据库的功能。
[0025]一种可能的实施方式,监听进程列表中的服务组件对应的进程是否采用了数据库协议,发送了进行数据库认证的认证数据包之前,还包括:
[0026]与所述安全代理服务端进行安全代理认证;
[0027]在所述安全代理认证通过后,将所述服务组件的进程添加到所述进程监听列表中。
[0028]第三方面,本专利技术实施例提供了一种服务端,包括:
[0029]数据库,用于为客户端中已建立连接的服务组件提供所需的数据;
[0030]安全代理服务端,用于实现与所述数据库的握手认证协议以及代理所述数据库的功能,并执行如第一方面所述的方法。
[0031]第四方面,本专利技术实施例提供了一种客户端,包括:
[0032]服务组件,用于用第一用户密码对从服务端中的安全代理服务端接收到的随机字符串进行加密,得到第一随机字符串密文,并将所述第一随机字符串密文和对应的用户名通过数据库协议封装在认证数据包中发送给所述安全代理服务端;其中,所述数据库部署
在所述服务端中,所述安全代理服务端用于代理所述数据库对服务组件的安全认证;
[0033]安全代理客户端,用于代理所述服务组件访问所述数据库的安全认证,并执行如第二方面所述的方法。
[0034]第五方面,本专利技术实施例提供了一种安全代理服务端,所述安全代理服务端用于实现与被代理的数据库的握手认证协议以及代理所述数据库的功能,包括:
[0035]接收单元,用于接收第一随机字符串密文;其中,所述第一随机字符串密文是客户端中的服务组件用第一用户密码对服务端发送的随机字符串进行加密后得到的,所述服务端中部署所述安全服务端及数据库;
[0036]注册单元,用于在确定所述第一随机字符串密文可信后,将所述第一随机字符串注册到可信密文列表中;
[0037]处理单元,用于检测所述第一随机字符串密文是否存在于所述可信密文列表,若存在则建立所述服务组件与所述安全代理服务端的连接,以及所述安全代理服务端与所述数据库的连接。
[0038]一种可能的实施方式,所述安全代理服务端还包括定时单元,所述定时单元用于:
[0039]向所述服务组件发送随机字符串,并启动计时器进行计时,以确定所述第一随机字符串密文是否超时接收。
[0040]一种可能的实施方式,所述注册单元还用于:
[0041]若确定所述第一随机字符串密文超时接收,则确定所述第一随机字符串密文不可信;
[0042]若确定所述第本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种连接建立的方法,应用于安全代理服务端,所述安全代理服务端用于实现与被代理的数据库的握手认证协议以及代理所述数据库的功能,其特征在于,所述方法包括:接收第一随机字符串密文;其中,所述第一随机字符串密文是客户端中的服务组件用第一用户密码对服务端发送的随机字符串进行加密后得到的,所述服务端中部署所述安全服务端及数据库;在确定所述第一随机字符串密文可信后,将所述第一随机字符串注册到可信密文列表中;检测所述第一随机字符串密文是否存在于所述可信密文列表,若存在则建立所述服务组件与所述安全代理服务端的连接,以及所述安全代理服务端与所述数据库的连接。2.如权利要求1所述的方法,其特征在于,接收第一随机字符串密文之前,还包括:向所述服务组件发送随机字符串,并启动计时器进行计时,以确定所述第一随机字符串密文是否超时接收。3.如权利要求2所述的方法,其特征在于,在确定所述第一随机字符串密文可信后,将所述第一随机字符串注册到可信密文列表中之前,还包括:若确定所述第一随机字符串密文超时接收,则确定所述第一随机字符串密文不可信;若确定所述第一随机字符串密文接收未超时,则根据所述第一随机字符串密文的来源验证所述随机字符串密文是否可信。4.如权利要求3所述的方法,其特征在于,根据所述第一随机字符串密文的来源验证所述随机字符串是否可信,包括:若所述第一随机字符串是从所述服务组件接收到的,则获取本地存储的与所述服务组件对应的第二用户密码;用所述第二用户密码对所述随机字符串进行加密,获得第二随机字符串密文;判断所述第二随机字符串密文是否与所述第一随机字符串密文一致,若一致则确定所述第一随机字符串可信,否则确定所述第一随机字符串不可信。5.如权利要求3所述的方法,其特征在于,根据所述第一随机字符串密文的来源验证所述随机字符串是否可信,包括:若所述第一随机字符串是从所述安全代理客户端接收到的,确定所述第一随机字符串可信。6.一种连接建立的方法,应用于安全代理客户端,其特征在于,包括:监听进程列表中的服务组件对应的进程是否采用了数据库协议,发送了进行数据库认证的认证数据包;其中,所述进程列表用于设置需要监听的服务组件的进程,所述认证数据包中携带有所述服务组件请求与数据库建立连接所需的第一随机字符串密文及对应的用户名,所述第一随机字符串密文是所述服务组件用第一用户密码对服务端发送的随机字符串进行加密后得到的;当监听到所述服务组件发送了所述认证数据包后,获取所述认证数据包,并对所述认证数据包进行解析,从解析后的认证数据包中获取所述第一随机字符串密文;将所述第一随机字符串密文注册到安全代理服务端的可信密文列表中,其中,所述安全代理服务端根据所述可信密文列表对所述服务组件进行安全验证,并在所述安全验证通过后建立所述服务组件与所述安全代理服务端的连接,以及所述安全代理服务端与所述数
据库的连接,所述安全代理服务端用于实现与所述数据库的握手认证协议以及代理所述数据库的功能。7.如权利要求6所述的方法,其特征在于,监听进程列表中的服务组件对应的进程是否采用了数据库协议,发送了进行数据库认证的认证数据包之前,还包括:与所述安全代理服务端进...

【专利技术属性】
技术研发人员:肖曙光
申请(专利权)人:北京世纪互联宽带数据中心有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1