Web应用程序中的数据库安全策略

时间:2022-08-14 06:08:46

Web应用程序中的数据库安全策略

(1.山东烟台南山学院信息管理学院,山东烟台265713;2.山东烟台南山学院基础教学部,山东烟台265713)

摘 要:数据库在Web应用程序中具有相当重要的作用。该文从Web应用程序和数据库的安全性入手,从建立安全模型、数据加密、数据库的备份恢复等几个方面对Web应用程序中的数据库安全性进行了讨论,并提出了Web应用程序中的数据库发展趋势。

关键词:Web应用程序;数据库安全;策略;发展趋势

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2007)01―10023-01

1 引言

在Intemet大众化的今天,数据库和数据库技术在不断增长的Web程序设计中起着越来越大的作用,甚至在计算机应用的各个领域,数据库都起着至关重要的作用。没有数据库的安全和保护,Web程序设计的深度和广度都将受到很大的影响。但是,多数程序设计人员错误的认为只要把网络和操作系统的安全搞好了,那么所有的应用程序也就安全了。其实,数据库系统中存在的安全问题通常会造成严重的后果,因此研究数据库的安全问题就具有非常重要的价值。

2 Web应用程序和数据库安全

Web应用程序就是使用HTTP作为核心通信协议,并使用HTML语言向用户传递基于Web信息的应用程序,它实际上就是一组网页的集合,在这些网页之间可以相互传递信息,还可以通过这些网页对Web服务器上的各种资源(包括数据库)进行存取。既然Web应用程序能够对数据库中的数据进行存取,而且Web中的信息大都存放在数据库中,可见数据库的安全性是非常的重要。

数据库安全就是保证数据库信息的保密性、完整性、一致性和可用性。保密性指保护数据库中的数据不被泄漏和未授权的使用:完整性指保护数据库中的数据不被破坏和删除:一致性指确保数据库中的数据满足实体完整性、参照完整性和用户定义完整性的要求:可用性指确保数据库中的数据不因人为的和自然的原因对授权用户不可用。

3 Web应用程序中的数据库安全策略

3.1 建立安全模型

通常,安全措施是Web用户从开始访问Web应用程序一直到访问后台数据库要经过的安全认证过程。我们可以通过用户身份识别加强安全措施.用户身份识别以数据库验证为基础,只有经过数据库验证的用户才是合法的用户。数据库验证技术包括验证用户表、用户授权表等。

(1)验证用户表:验证用户表包含授权用户的各项信息,只有与用户表内各项信息完全相符的用户才是授权用户。

(2)用户权限表:每个用户各自有事先规定的权限,当授权用户进入时,通过用户权限表赋予用户相应权利。

通过身份认证的用户,只是拥有了进入应用系统和数据库的“凭证”。但用户在应用系统和数据库中可以进行什么样的操作,就要依靠用户权限表中的所赋予用户的权限决定当前用户可以对应用系统中哪些模块、模块中的哪些丁作流程进行管理。

3.2 数据加密

数据加密(Data Encryption)是防止数据库中数据存储和传输中失密的有效手段。一般而言,Web应用程序通过安全模型基本能够控制数据库的安全性,但为了防止用户能非法进入而泄漏数据(特别是一些重要部门或敏感领域),有必要对数据库中数据进行加密处理,以强化数据存储的安全保护。

下面我们以Access数据库为例,谈谈数据的加密:

在Access编辑窗口,选择“工具”菜单,单击“安全”,再单击“加密/解密数据库”,在“加密/解密数据库”窗口中选取数据库(如:data.mdb),然后按“确定”,接着会出现“数据库加密后另存为”的窗口,将其保存为datal.mdb。接着,data.mdb就会被编码.然后存为datal.mdb。要注意的是,以上的动作并不是对数据库设置密码,而只是对数据库文件加以编码,目的是为了防止他人使用别的工具来查看数据库文件的内容。接下来我们为数据库加密。首先打开经过编码的datal.mdb,在打开时,选择“独占”方式,然后选择“工具”菜单“安全”“设置数据库密码”,接着输入密码即可。为datal.mdb设置密码之后。如果再使用Access数据库文件,则Access会先要求输入密码.验证正确后才能够启动数据库。对数据库加密后,要在ASP程序中使用.就需要在ASP程序中的connection对象的open方法中增加PWD的参数。例如:

oaram="driver={fMicrosoft Access Driver(*.mdb)};Pwd=vfdsfs“

param=param&”;dbq=“&server.mappath(“datal.mdb”)

conn.open param

这样,即使他人得到了datal.mdb文件,没有密码他是无法看到datal.mdb的。

以上是Access数据库的加密,其他数据库也都有自己的加密技术,但加密的基本思想是相似的,都是根据一定的算法将原始数据(明文Plaintext)加密成为不可直接识别的格式(密文,Cipher-text),数据以密文的方式存储和传播,这样就可以防止数据的泄漏。

3.3 数据库备份恢复策略

数据备份(建立冗余数据)是指定期或不定期地对数据库进行复制。可以将数据复制到本地机器上,也可以复制到其他机器上。恢复方法通常是可以利用利用备份技术、事务日志技术、镜像技术完成。

计算机同其他设备一样,都可能发生故障。计算机故障的原因多种多样,包括磁盘故障、电源故障、软件故障、灾害故障以及人为破坏等。一旦发生这种情况,就可能造成数据库的丢失,从而导致Web应用程序瘫痪。因此数据库系统必须采取必要的措施,以保证发生故障时,可以恢复数据库。数据库的备份和恢复机制就是保证在数据库出故障时,能够将数据库还原到正常状态。

4 Web应用程序中的数据库安全发展趋势

Web应用程序中的数据库安全不仅要关心敏感数据的保护,也要研究新的机制来确保用户在一个受约束的方式下可以找到他应得到的信息,要在确保可用性的前提下研究数据库安全。Web应用程序中数据库安全将继续是一个重要的研究目标,随着Web技术的发展和数据库技术应用范围的扩大,将会有以下发展趋势:

(1)在Web应用程序中,数据库的弱点和漏洞可以被轻易的利用,因此Web程序的数据库安全要和入侵检测系统、防火墙等其他安全产品应配套研究使用。

(2)数据库加密技术的研究应用是今后数据库重要应用部门研究和推广的重点。

(3)Web程序的数据库安全不是孤立的,其他应用系统通过接口可以存取数据库,因此对应用系统和数据库连接部分的程序本身的安全研究也是数据库安全研究的范围。

5 结束语

在Web应用程序中,绝对的安全是不存在的。即使在安全的系统中,恶意用户也可以使用先进的工具来尝试进入您的系统,而且随着Web技术的发展和数据库应用范围的扩大,数据库安全也将会遇到新的问题,这些必然会促使人们对数据库研究从各个方面向前推进。

注:本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。

上一篇:浅析数据库的安全性 下一篇:匿名通信技术的研究现状和发展趋势