C/S架构客户机安全获取数据库服务器连接信息的方法技术

技术编号:5135864 阅读:1101 留言:0更新日期:2012-04-11 18:40
一种C/S架构客户机安全获取数据库服务器连接信息的方法,客户机端包括:数据库连接信息获取模块根据通讯参数,与连接信息提供者建立Socket连接,并调用连接信息提供者中的数据库连接信息代理进程组件,从数据库连接信息代理进程组件中获取加密的数据库连接信息后,用系统内置的解密算法和预先设定的解密密钥,解密获取的数据库连接信息,并传递给数据库连接模块;数据库连接模块用于动态设置数据库连接信息,并进行与服务器端的数据库连接;数据库连接信息代理进程组件用于响应C/S系统客户机端的Socket调用,并将数据库连接信息,通过内置的加密算法和预先设定的加密密钥进行加密,传送给客户机端的数据库连接信息获取模块。

【技术实现步骤摘要】
C/S架构客户机安全获取数据库服务器连接信息的方法
本专利技术公开一种C/S架构客户机安全获取数据库服务器连接信息的方法,属于 企业信息化安全领域。
技术介绍
在电子商务中,为了实现高度的安全性目前仍有大量的系统采用传统的C/S架 构开发。C/S架构的程序如需要与数据库通讯大都采用ODBC或OLEDB方式建立与数 据库服务器的连接。由于建立与数据库服务器的连接需要提供详细的连接参数信息,现 有的实现方式一般是通过一个文本格式的配置文件,来保存数据库连接信息,如果有多 个客户端程序,则每个客户端均会保存一份数据库配置信息。这种通过文本文件保存数 据连接信息的做法,存在两大不足一数据库连接信息容易暴露。如果数据库连接信息以明文方式存放,“非 法”用户通过查看文本格式的配置文件后可以轻易的获取数据库连接信息,然后便可以 采用其它的数据库连接工具与数据库建立连接,并对数据库进行数据检索,甚至是破坏 性操作。通过密文方式保存数据库连接信息,在程序中用解密,可以解决明文方式容易 泄密的不足。二 C/S客户端一般有十几个到上百个不等,由于安全上的考虑,企业数据 库管理员会定期更新数据库连接密码,这样一来所有的客户端都需要更新数据库连接信 息,否则系统便无法连接数据库。如果客户端个数较多,信息系统管理人员将需要花费 相当多的时间对各个客户端的连接信息进行修改。如果客户端部署在一个基于集团内网 的分地域办公环境,修复配置的工作将需要花费更多的时间与成本。
技术实现思路
针对上述提到的现有技术中C/S客户机通过在本机保存数据库连接信息,而带 来问题,本专利技术提供一种新的C/S客户机安全获取数据库服务器连接信息的方法,C/S 客户机通过一个功能模块与连接信息提供者通讯动态的获取数据库的连接信息。本专利技术解决其技术问题采用的技术方案是一种C/S架构客户机安全获取数据 库服务器连接信息的方法,包括设有相互连接的客户机端和服务器端,客户机端包括数据库连接信息获取模块数据库连接信息获取模块能够根据信息系统管理员 设置的与连接信息提供者的通讯参数,与连接信息提供者建立Socket连接,并调用连接 信息提供者中的数据库连接信息代理进程组件,从数据库连接信息代理进程组件中获取 加密的数据库连接信息后,用系统内置的解密算法和预先设定的解密密钥,解密获取的 数据库连接信息,并传递给数据库连接模块;数据库连接模块从数据库连接信息获取模块获取数据库连接信息,通过编写 方式在内存中动态设置数据库连接信息,并与服务器端的数据库进行连接;所述的服务器端包括有代理进程模块用于响应c/s系统中的客户机端的Socket调用,并将数据库连接信息,通过内置的加密算法和预先设定的加密密钥进行加密,传 送给客户机端的数据库连接信息获取模块。本专利技术的有益效果是采用本专利技术C/S客户机不再需要保存数据库连接信息, 同时在通过网络传输数据库连接信息时采用了加密传输,由于加密、解密算法对外不公 开,因此除了负责初始化连接信息提供者的系统管理员外,各个C/S客户机用户均无法 得知数据库连接信息,这在很大程度上提高了数据库的安全性。由于连接信息提供者的 连接信息相对稳定不变,因此数据库管理员可以给予安全的需要随时更新数据库连接密 码,甚至是数据库服务器的IP与端口,由于连接信息是通过连接信息提供者动态提供因 此不会对各个客户机端的数据库连接造成任何影响。下面将结合附图和具体实施方式对本专利技术做进一步说明。附图说明图1为本专利技术的系统架构示意图。 具体实施例方式本实施例为本专利技术优选实施方式,其他凡其原理和基本结构与本实施例相同或 近似的,均在本专利技术保护范围之内。请参看附图1,本专利技术中的C/S系统主要包括设有相互连接的客户机端和服务器 端组 成,本专利技术中客户机端主要包括下面两个部分(1)数据库连接信息获取模块数据库连接信息获取模块能够根据信息系统管 理员设置的与连接信息提供者的通讯参数,与连接信息提供者建立Socket连接,并调用 连接信息提供者中的数据库连接信息代理进程组件,从数据库连接信息代理进程组件中 获取加密的数据库连接信息后,用系统内置的解密算法和预先设定的解密密钥,解密获 取的数据库连接信息,并传递给数据库连接模块;(2)数据库连接模块用于动态设置数据库连接信息,并进行与服务器端的数 据库连接;本专利技术中的服务器端包括有数据库连接信息代理进程组件用于响应C/S系统 客户机端的Socket调用,并将数据库连接信息,通过内置的加密算法和预先设定的加密 密钥进行加密,传送给客户机端的数据库连接信息获取模块。本实施例中,连接信息提供者是一种特定功能的Socket (Socket:所谓socket通常也称作“套接字”,用于描述IP地址和端口,是一个通信链的句柄。应用程序通常通 过“套接字”向网络发出请求或者应答网络请求。)服务器程序,调用者通过与它进行 通信,可以获得需要连接的数据库服务器的连接配置信息,这些信息通常包括数据库 服务器IP地址、端口、用户名、密码、实例名等。密钥密钥是一种参数,它是在明文 转换为密文或将密文转换为明文的算法中输入的数据。本专利技术中密钥的位数可根据实际 采用的算法具体有所不同。数据加密数据加密就是对原来为明文的文件或数据按某种 算法进行处理,使其成为不可读的一段代码,通常称为“密文”,使其只能在输入相应 的密钥之后才能显示出本来内容,通过这样的途径来达到保护数据不被非法人窃取、阅读的目的。该过程的逆过程为解密,即将该编码信息转化为其原来数据的过程。本专利技术 采用“对称”加密,既加密与解密采用同样的密钥。加密算法可选,但是加密算法内置 在编写好的程序里,且对外界保密。信息系统管理员为管理整个数据库系统的人。本专利技术的实现过程如下A、客户机端启动C/S程序,客户机端的数据库连接信息获取组件生成随机字符 串,并将生成的随机字符串保存在内存中,然后采用加密算法,用内置在系统中的密钥 进行加密后,调用数据库连接信息代理服务器中的数据库连接信息代理进程;B、数据连接代理服务器中的数据库连接信息代理进程被调用后,采用内置在系 统中的密钥(此处的密钥与客户机端内置的密钥相对应)对数据库连接信息获取组件生成 的加密后的随机字符串进行解密,获取客户机端生成的随机字符串,并将数据库连接信 息,即用户名和密码用随机字符串作为密钥进行加密后返回客户机端;C、客户机端的数据库连接信息获取组件从数据库连接信息代理进程获取加密信 息后,用保存在内存中的随机字符串解密后获取数据库连接信息,并调用数据库连接组 件,在程序中动态设置数据库连接信息,进行数据库连接。采用本专利技术C/S客户机不再需要保存数据库连接信息,同时在通过网络传输数 据库连接信息时采用了加密传输,由于加密、解密算法对外不公开,因此除了负责初始 化连接信息提供者的系统管理员外,各个C/S客户机用户均无法得知数据库连接信息, 这在很大程度上提高了数据库的安全性。由于连接信息提供者的连接信息相对稳定不 变,因此数据库管理员可以给予安全的需要随时更新数据库连接密码,甚至是数据库服 务器的IP与端口,由于连接信息是通过连接信息提供者动态提供因此不会对各个客户机 端的数据库连接造成任何影响。本文档来自技高网...

【技术保护点】
一种C/S架构客户机安全获取数据库服务器连接信息的方法,包括设有相互连接的客户机端和服务器端组成的C/S系统,其特征是:所述的客户机端包括:数据库连接信息获取模块:数据库连接信息获取模块能够根据信息系统管理员设置的与连接信息提供者的通讯参数,与连接信息提供者建立Socket连接,并调用连接信息提供者中的数据库连接信息代理进程组件,从数据库连接信息代理进程组件中获取加密的数据库连接信息后,用系统内置的解密算法和预先设定的解密密钥,解密获取的数据库连接信息,并传递给数据库连接模块;数据库连接模块:用于动态设置数据库连接信息,并进行与服务器端的数据库连接;所述的服务器端包括有数据库连接信息代理进程组件:用于响应C/S系统客户机端的Socket调用,并将数据库连接信息,通过内置的加密算法和预先设定的加密密钥进行加密,传送给客户机端的数据库连接信息获取模块。

【技术特征摘要】
1. 一种C/S架构客户机安全获取数据库服务器连接信息的方法,包括设有相互连接 的客户机端和服务器端组成的C/S系统,其特征是所述的客户机端包括数据库连接信息获取模块数据库连接信息获取模块能够根据信息系统管理员设置 的与连接信息提供者的通讯参数,与连接信息提供者建立Socket连接,并调用连接信息 提供者中的数据库连接信息代理进程组件,从数据库连接信息代理进程组件中获取加密 的数据...

【专利技术属性】
技术研发人员:王远
申请(专利权)人:深圳市拜特科技股份有限公司
类型:发明
国别省市:94[中国|深圳]

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

1