浅谈WEB数据库安全机制

来源 :企业技术开发·下半月 | 被引量 : 0次 | 上传用户:g123s123
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:随着Internet和www的发展和普及,Web技术与数据库技术紧密结合,wEB数据库必将逐步取代基于传统Client/Server模式的数据库系统。同时,Web数据库的安全问题日益突出,如何才能保证和加强数据库的安全性已成为目前必须要解决的问题。文章就Web数据库系统在建设和应用过程中常用的技术和方法进行了探讨,分析了可能存在的安全隐患,并给出相应的解决策略。
  关键词:WEB;数据库;安全机制
  中图分类号:TP311.13 文献标识码:A 文章编号:1006-8937(2011)24-0072-01
  伴随Internet的飞速发展,目前Web技术与数据库管理系统(DBMS)相互融合领域的研究已成为热点方向之一,数据库厂家和Web公司也纷纷推出各自的产品和中间件支持Web技术和DBMS的融合,将两者取长补短,发挥各自的优势,使用户可以在Web浏览器上方便地检索数据库的内容。Web数据库系统充分发挥了数据库管理系统(DBMS)高效的数据存储和管理能力以Web这种浏览器/服务器模式为平台,将客户端融入统一的Web浏览器,为用户提供使用简便、内容丰富的数据库服务。Web数据库系统必将成为Internet提供的核心服务。但Web数据库中存在诸多安全隐患,诸如用户名和密码通过网络传输时很容易被人窃取,用户读取的数据可能被截取、篡改,数据库本身遭受攻击等。如何保障Web数据库的安全运行,免遭各方面的威胁是我们亟待解决的关键问题。
  1 WEB数据库系统体系结构
  随着软件系统的规模与复杂性的增加,软件体系结构的选择成为比数据结构和算法更加重要的因素。一个好的软件体系结构能够为软件系统的分析、设计、实现以及配置提供良好的框架。
  三层结构的Client/Server模型运用事务分离原则,将应用程序划分到3个不同的层次:用户服务层、业务服务层与数据服务层,从而使得应用程序具有可扩展性、易维护性等优点,已经成为当前应用程序开发的理想框架,安全管理技术与实现基于Web管理信息系统采用的是三层Client/Server结构,即Browser/Web应用服务器,数据库服务器结构。用户通过浏览器向服务器发送HTTP请求Web服务器接收客户端发送来的HTTP请求,然后对请求进行分析。如果请求的是静态页面,那么就将所请求的页面发送到客户端。如果请求的是动态页面,那么就执行此动态页面并将执行结果发送给客户端。网站信息提供者可以通过改变数据库中的数据向用户提供最新信息,而不需要逐个更改页面。此种结构的信息流是在浏览器-Web服务器-DB服务器之间进行,缺乏统一的安全系统,因此也存在明显的安全性问题。
  在上述三层结构的基础上,还有人提出了许多新型作者简介:罗中炜,九江学院。的体系结构。如B/W/D/C四层体系结构和浏览器一Web服务器一中间件服务器一DB服务器等。B/W/D/C四层体系结构实际是一种B/S和C/S的混合结构。其主要解决的是传统三层结构在数据库维护上性能差,工作量大且不够方便等问题。而浏览器-Web服务器一中间件服务器一DB服务器结构则采用JSP技术和JavaBean组件的结合,其主要解决的是传统三层结构在软件重用性差等方面的问题。
  2 安全管理技术与机制
  2.1 中间件连接技术
  实现基于Web的数据库的关键技术在于制作交互Web页面以及通过Web访问数据库。常用的连接技术有CGI、API和ASP。CGI和API技术是将Web服务器与某一进程或API相连,该进程或API再将得到的结果转化为HTML文档,并返回Web服务器,然后由Web服务器把得到的HTML文档传给浏览器。CGI是得到普遍遵守的规范,但CGI程序实现难度大且运行效率低下,因此缺乏生命力,它必然要被新的标准所取代。WebAPI技术提高了程序运行效率,但用AP/编程比用CGI更困难。另外,由于各种不同的API互不兼容,用某种API编写的程序只能在特定的Web服务器上运行,使用范围受限。而ASP是微软公司推出的一种新型的服务器端脚本编写环境,它克服了CGI和API应用程序存在的缺点。具有它独特的优点,主要表现在:有VisuallnierDev提供的一系列工具支持,可以方便地进行编程、数据库连接和Web站点管理;利用其内建对象Activeserver组件和设计时间ActiveX控件,可以方便地访问数据库,并在请求之间维护状态信息;具有良好的数据库兼容性,采用基于ODBC的连接技术,可以支持MierosoftSOLServer、oraele和Inform议等多种数据库系统。ASP支持开发者使用几乎所有开发工具来组合HTML代码,并且可以调用本地服务器或远程服务器上运行的组件来存取数据库、应用程序或处理信息。在采用ASP技术与数据库连接的系统中,浏览器和Web服务器采用HTTP协议彼此通信。用户执行基于Web的数据库应用程序,在浏览器端发出对某一数据库文件的请求,Web服务器接收到请求,不是直接通过应用程序访问数据库,而是激活ASP进行各级安全性检测。ASP利用ADO在服务器端创建连接对象,通过ODBC访问后台数据库保存的用户基本信息进行用户鉴定,拒绝非法用户访问请求,对合法用户根据其权限存取数据并退回处理结果。
  2.2 监视跟踪技术
  日志系统具有综合数据记录功能和自动分类检索能力。完整的日志不仅要包括用户的各项操作,而且还要包括网络中数据接收的正确性、有效性及合法性的检查结果,为日后网络安全分析提供可靠的依据。许多应用程序的日志记录只用于事后监督,其实对日志的分析还可用于预防入侵,提高网络安全。在数据库应用系统中,日志将记录自用户登录开始起,直到退出系统为止,在这段时间中所执行的所有操作,包括登录失败操作、对数据库的操作及系统功能的使用等。因此,必须建立完善的日志记录功能。另外,还可利用现有的网络监视软件进行日志记录和信息跟踪。例如,用日志监视跟踪可进行潜在“黑客”攻击检查、单账号多用户检查和非工作时间操作检查等。
  2.3 存储过程
  在基于Web的数据库应用系统中,可通过建立参数化的存储过程实现数据库的访问,这通常是增强Web安全的一个最佳方案。如果不用此方法,则SQL查询必须由Web应用程序动态构造。如果Web层遭到破坏,攻击者就可以向数据库查询中插入恶意命令,以检索、更改或删除数据库中存储的数据。使用存储过程,Web应用程序与数据库的交互操作仅限于通过存储过程发送的几个特定的严格类型参数。
  2.4 其它安全措施
  硬件设备的控制是指Web数据库系统中计算机硬件设备的物理安全保障,主要包括计算机、存储设备、其它外设、网络设备及网络通信线路等。保证物理层安全的主要方法一是采用性能可靠的硬件,二是采用冗余容错技术,比如双多机集群系统、磁盘冗余阵列、双多冗余通讯线路等。特别要保证中心服务器的安全。在企事业单位内部网络和外部网络之间建立防火墙,内部系统的服务器、邮件服务器、数据库服务器等放在防火墙内,对外公开使用的放在防火墙外,只有经过授权的外网用户才能通过防火墙,进入到内网系统获取信息。另外,使用拥有安全机制的网络设备也是应该考虑的选择,比如许多交换机、路由器等都有安全机制,能实现访问控制和权限管理等。
  3 结语
  基于Web数据库的安全是一个系统性、综合性的问题,而且其涉及的范围很广,因此,在进行系统设计时不能将它孤立考虑,只有结合实际层层设防,这个问题才能得到有效的解决。任何安全措施都是相对的,只能根据具体的应用对象,权衡安全要求与所需花费的代价来进行选择适当的安全策略。还应看到,和其它技术一样,入侵者的手段也在不断提高。安全防范是一个永久性的问题,只有通过不断地改进和完善安全手段,才能保证系统的正常运行,才能提高系统的可靠性。
其他文献
以丙烯酰氧基Span-60为乳化剂,采用反相乳液合成高分子聚丙烯酸钠尚未见有文献报道.本文研究了乳化剂和反应温度对聚合体系稳定性的影响;(NH4)2S2O8-DMAEMA-NaHSO3引发剂和烯
货币是人类社会经济发展到商品生产阶段的产物,是商品交换的主要媒介和价值尺度,是商业贸易活动的基础。中国古代货币是世界上起源最早的货币之一。它源远流长,三四千年的发展演
[目的]对线纹香茶菜狭基变种[Radbosia lophanthoides var.gerardianus(Benth.)Hara]和线纹香茶菜细花变种[Radbosia lophan-thoides Hara var.graciliflorus(Benth.)Hara]的染色
本文对基于属性值为实数的多属性决策问题进行了探讨,提出了一种改进的TOPSIS方法,该方法在一定程度上解决了传统的TOPSIS方法不能反映决策者主观偏好信息的问题.应用实例说
<正>目次一、中央银行承担金融监管的历史渊源二、2008年国际金融危机前中央银行的去监管化三、目标监管体制中的中央银行再监管四、启示与借鉴中央银行在现代国家货币金融体
期刊
结合物理化学多媒体教学实践,探讨了如何利用现代教学手段,发挥教师、学生、媒体的相互作用,优化教学资源,增强教学效果.
本文论述了实践环节在计算机专业《数字电路与逻辑设计》课程教学中的地位与作用,分析了目前实验教学中存在的问题与不足,指出了采用“硬”+“软”的实验教学模式是实验教学的改
2001~2003年在郑州市动物园对笼养红腹锦鸡的繁殖习性与人工孵化进行研究的结果表明,求偶炫耀可见于每年的11月上旬至翌年7月中旬,产卵时间为4月上旬开始,6月中下旬结束,鸡群
在结论n(2)=5,n(3)=9的基础上,使用归纳法得到结论n(2m·3n)=4(2m·3n-1)+1;m,n=0,1,2,……