摘要:基于网络的数据库访问安全问题,即数据库远程访问安全问题成为研究热点问题,本文针对信息系统中基于广域网的数据库访问带来的非法访问、黑客攻击、数据的截取、篡改等安全问题提供了建立一个安全代理系统代理对数据库的访问的思路,并对其中整个系统结构进行分析。
关键词:数据库 安全代理 系统结构分析
0 引言
随着信息时代的到来,各种信息爆炸式发展并积累着,这涉及到人们日常生活、企事业单位的管理、各种科研活动以至国家的宏观经济调控等等各个方面。采用计算机对各种信息作为数据进行管理成为高效科学的手段,这也促进了计算机数据库的发展。目前,基于计算机网络的系统正得到越来越广泛的应用,计算机网络的开放性和信息的安全性之间的矛盾日益突出。基于网络的数据库访问安全问题,即数据库远程访问安全问题成为研究热点问题[1,2],本文针对信息系统中基于广域网的数据库访问带来的非法访问、黑客攻击、数据的截取、篡改等安全问题提供了建立一个安全代理系统代理对数据库的访问的思路,并对其中整个系统结构进行分析。
1 数据库安全代理访问系统结构
为了达到安全访问数据库的目的,在传统的数据库访问方式中加入加密和认证安全技术以及防火墙技术,形成新的数据库访问结构,而新加入的模块以代理的形式在起作用。WWw.133229.CoM
1.1 总体系统结构 数据库安全访问代理用来提供用户身份认证和数据库访问服务并提供了网络传输加密服务。所有的客户方的数据库访问请求都通过数据库安全访问代理进行转发。客户方数据访问代理用于接收所有的客户应用数据库访问请求(包括数据库客户的连接建立和连接断开请求),并负责向数据库客户传送数据库访问的结果。数据库访问请求是按照协议格式化为数据报提供给数据加密/认证客户端,而数据库访问结果是按照协议格式由数据加密/认证客户端提供。数据加密认证客户端完成客户端的数据加密和认证工作,同服务器端的数据加密/认证服务器一起完成强大的数据加密功能保障数据安全。数据加密/认证服务器接收通过广域网(或者是局域网)传输的客户端发出的数据库访问请求数据报,这个请求是经过数据加密/认证客户端加密的。解密后的数据传递给数据库访问代理服务器。然后将数据库访问代理服务器返回的结果加密通过网络回送客户端。
可以看到代理系统将广域网包含在内部。广域网是数据库访问中的最薄弱环节,容易引起各种安全问题。采用代理后广域网中传输的是加密后的数据,配合认证签名技术可以保证数据不被窃取篡改,极大的提高了系统的数据安全性。数据库访问代理服务器主要用于向数据库服务器提出所代理客户的数据库访问请求,并负责接受应答,执行真正的数据库操作。
1.2 安全访问代理的中间件特点 数据库安全访问代理处在应用和数据库之间,起一个数据库中间件的作用和结构。可以在代理系统中,对数据库的访问请求进行控制管理,配合数据库的特点,达到发挥最大数据库性能的目的,例如建立数据库连接池。这种模型完全克服了传统的客户/服务器模型的缺点,具有可重用性、灵活性、可管理性、易维护性等一系列优良的特性。远程过程调用中间件(rpc,remote proeedure call)在客户/服务器计算方面,比数据库中间件又迈进了一步。即c的灵活特性使得它有比数据库中间件更广泛的应用,它可以应用在更复杂的客户/服务器计算环境中。
1.3 安全访问代理的代理作用 之所以称为代理是因为系统接收数据库应用的数据库访问请求,把请求映射到代理系统对于数据库的访问,而系统不对这些请求进行过于复杂的处理。同其它代理系统一样,这种代理具有能够加入安全控制的特点,同时代理系统对外接收数据库访问请求,而数据库系统可以只接受代理的访问请求,起到隔离和安全保护作用。另一个重要特点是,可以加入到己经开发应用的信息系统中,极大提高原有系统的安全性能而不需要重新开发。
1.4 安全访问代理的防火墙作用 现在网络的一个现状是黑客的攻击广泛存在。攻击后果可以是窃取信息、使系统瘫痪或者造成网络堵塞。数据库安全访问代理可以起应用级网关类别的防火墙作用,代理服务器而不是数据库暴露在广域网中,对数据库的访问都是通过代理服务器来完成。代理服务器采用防火墙技术对抗黑客的各种攻击,以及配合数据加密和身份认证技术,使系统达到极大的安全要求。数据库和代理服务器处于一个局域网之中,不会受到广域网用户的访问或者攻击,同时数据库的原有安全措施在起作用。
1.5 安全代理访问系统采用ssl加密认证技术 代理系统中的数据加密和身份认证及签名采用ssl技术来完成。代理系统中的数据加密和身份认证及签名采用ssl技术来完成。应用程序通常使用ipc (interporcess communications facility)与不同层次的安全协议打交道,在不同传输层协议中工作。最流行的工pc界面是badsockets和tli。在unix系统v命令里可以找到。在internet中提供安全服务的首先一个想法便是强化它的ipc界面,如bsd sockets等,具体做法包括双端实体的认证,数据加密密钥的交换等。
1.6 安全代理访问系统形成多层结构 为了克服由于传统客户/服务器模型的这些缺陷给系统应用带来的影响,一种新的结构出现了,这就是三层(n层)客户/服务器模型。三层客户/服务器结构构建了一种分割式的应用程序。系统对应用程序进行分割后,划分成不同的逻辑组件,主要分为三层:用户服务层,业务处理层,数据服务层。系统中由于安全访问代理的加入而形成多层结构,安全代理形成独立的一层,与其它层通过标准的数据库访问接口,这就提供了极大的灵活性,每一层的改变可以不影响其它层。这也很大程度上降低了数据安全访问代理的设计复杂性。
1.7 安全代理访问系统采用odbc技术 odbc之所以能够操作众多的数据库,是由于当前绝大部分数据库全部或部分地遵从关系数据库概念,odbc看待这些数据库时正是着眼了这些共同点。odbc基本思想是提供独立程序来提取数据信息,并具有向应用程序输入数据的方法。odbc接口的优势之一为互操作性,程序设计员可以在不指定特定数据源情况下创建odbc应用程序。从应用程序角度方面,为了使每个驱动程序和数据源都支持相同的odbc函数调用和sql语句集,odbc接口定义了一致性级别,即odbc api一致性和odbc srl语法一致性。
1.8 安全代理访问系统对于应用的透明性 对于应用的透明性是指对应数据库应用来说,采用或者不采用数据库安全访问代理,对于数据库的访问方法没有区别。技术的透明性可以达到一个向上继承的作用,这也是很大的优点。对应用的透明性是通过采用标准的数据库访问技术来达到的,数据库应用的每一个数据库访问操作经过访问代理系统映射为同样的数据库访问实施于数据库,对ap工调用进行一对一的映射,所以原来开发系统不需要改动。也为系统的方案设计提供了灵活性。
1.9 安全代理访问系统中数据的压缩传输 数据库安全访问代理中,数据的传输要通过工nternet来完成。带宽相对于局域网来说要窄的多,造成数据库访问的瓶颈,影响速度。对于使用很广泛的拨号上网方式来说,速度问题更为重要。所以考虑采用数据压缩传输。数据的压缩是作为ssl的一部分存在的,采用的主要压缩技术是zlib。通常的压缩比可以达到2:1~5:1。
2 结语
通过广域网的数据库访问,存在用户的身份认证、黑客的攻击、数据的被窃取、篡改等安全问题,以及广域网带宽窄造成的速度慢问题。为信息系统的开发应用造成了困难。上述问题可以通过数据库安全访问代理解决。访问代理具有中间件的特点介于数据应用和数据库之间,形成了一个数据库访问的多层结构。这些结构特点使代理相对独立,降低系统的复杂度。
参考文献:
[1]宋红君,秦利波.数据库安全技术策略与多级安全代理模型[j].华北科技学院学报.2005.02.
[2]贺达,洪飞龙,鄢田云,等.数据库应用系统中安全代理的研究与实现[j].网络安全技术与应用.2005.02.