曹辉
摘 要:如何保障数据的安全性是一个十分重要的课题。要维护好数据库系统始终保持最佳运行状态,一个至关重要的因素是要保证数据库的安全性。安全其实也是管理数据库存的一个必要的组成部分,是指能确保当数据库系统DownTime时,数据库数据的安全,同时保护数据库中数据不被破坏、丢失,不被窃取和非法使用。
关键词:数据库;安全性;策略
1 数据库数据的安全
它应能确保当数据库系统DownTime时,当数据库数据存储媒体被破坏时以及当数据库用户误操作时,数据库数据信息不至于丢失。
2 数据库系统不被非法用户侵入
它应尽可能地堵住潜在的各种漏洞,防止非法用户利用它们侵入数据库系统。对于数据库数据的安全问题,数据库管理员可以参考有关系统双机热备份功能以及数据库的备份和恢复的资料。
数据安全所面临的威胁
原则上,凡是造成对数据库内存储数据的非授权的访问—读取,或非授权的写入—增加、删除、修改等,都属于对数据库的数据安全造成了威胁或破坏。另一方面,凡是正常业务需要访问数据库时,授权用户不能正常得到数据库的数据服务,也称之为对数据库的安全形成了威胁或破坏。因为很显然,这两种情况都会对数据库的合法用户的权益造成侵犯,或者是信息的被窃取,或者是由于信息的破坏而形成提供错误信息的服务,或者是干脆拒绝提供服务。
对数据库安全的威胁或侵犯大致可以分为以下几类:
1、自然灾害:自然的或意外的事故、灾难,例如地震、水灾、火灾等导致的硬件损坏,进而导致数据的损坏和丢失。
2、人为疏忽:由授权用户造成的无意损害,特别在批处理作业的情况下。
3、恶意破坏:存心不良的编程人员、技术支持人员和执行数据库管理功能的人员的破坏、毁损及其他行为。
4、犯罪行为:盗窃行为、监守自盗、工业间谍、出卖公司秘密和邮件列表数据的雇员等。
5、隐私侵害:不负责任的猎奇,竞争者查看数据,为政治和法律目的获取数据。
现在的网络数据库更多的是互联的、多级的、不同安全级别的数据库。由此,网络数据库安全不仅涉及到数据库之间的安全,更多地涉及到了一个数据库中多级功能的安全性。理想的网络数据库安全防护应考虑两个层面:一是外围层的安全:操作系统与WEB服务器以及应用服务器的安全;二是数据库核心层的安全,即数据库本身的安全。
3 外围层的安全
外围层的安全包括系统安全和网络安全。对计算机系统和网络安全来说,最主要的安全威胁来自病毒侵犯,对此,外围层中应避免病毒利用网络平台隐藏、扩散及破坏整个系统的运行,采用防、杀、管相结合的综合治理方法。
(一)操作系统安全技术
操作系统是大型数据库系统的运行平台,为数据库系统提供一定程度的安全保护。目前操作系统平台大多数集中在Windows2000和Unix,安全级别通常为C1. C2级。主要安全技术有操作系统安全策略、安全策略、数据安全等方面。操作系统安全策略用于配置本地计算机的安全设置,包括密码策略、账户锁定策略、审核策略、IP安全策略、用户权利指派、加密数据的恢复代理以及其它安全策略。具体可以体现在用户账户、口令、访问权限、等方面。
(二)SQL Server数据库通用安全模型
标准的SQL Server数据库安全模型由用户、SQL Server登录、权限和基本表组成,SQL Server的安全认证模式
安全认证是指数据库系统对用户所输入的账号和口令进行确认,它包括确认用户的账号是否有效、能否访问系统、能够访问哪些数据等。安全性认证模式是指系统确认用户的方式。SQL Server有标准安全认证模式、Windows2000安全认证模式(也称集成安全模式)以及Windows 2000和SQL Server的混合安全认证模式。
(三)数据库管理系统(DBMS)下的安全防范
数据库系统的安全性很大程度上依赖于数据库管理系统。如果数据库管理系统安全机制非常强大,则数据库系统的安全性能就较好。目前上流行的是关系式数据库管理系统,其安全性功能很弱,这就导致数据库系统的安全性存在一定的威胁。我们从提供身份认证和数据完整性认证、授权访问控制、对机密信息实施加密保护和审计追踪和攻击检测等几个方面着手,构建数据库管理系统(DBMS)下的安全防范,保证数据库的独立性和完整性。
4 核心层的安全
(一)数据库的加密
网络数据库中的数据加密是数据库安全的杨心问题。为刘抗黑客利用网络协议、操作系统安全漏洞绕过数据库的安全机制而直接访问数据库文件,对数据库文件进行加密就显得尤为重要。
数据库的加密不同于一般的文件加密,传统的加密以报文为单位,网络发送和接收的都是同一连续的比特流,传输的信息无论长短,密匙的匹配都是连续的、顺序对应的,它不受密匙长度的限制;在数据库中,记录的长度一般较短,数据存储的时间较长,相应密匙的保存时间也视数据生命周期而定。若在库内使用同一密匙,则保密性差;若不同记录使用不同密匙,则密匙太多,相当复杂。因此,不能简单采用一般通用的加密技术,而必须针对数据库的特点,研究相应的加密方法和密匙管理方法。传输数据库数据的使用方法决定了它不可能以整个数据库文件为单位进行加密。符合检索条件的记录只是数据库文件中随机的一段,通常的加密方法根本无法从中间开始解密。
(二)数据分级控制
根据数据库安全性的要求,根据存放数据的重要程度,应对敏感程度不同的数据实行一定的级别控制。比如,为每一数据对象都赋予一定的密级:公用级、秘密级、机密级、绝密级。对于不同权限的用户,系统也定义相应的级别加以控制。这样一来,DBMS A通过建立视图,管理员也可以根据查询数据的归纳,续团戎一个或多个视图,并将其查询权限授予一个或多个指定用户。这种数据分类的操作单位是以授权矩阵表中的一条记录的某个字段形式进行的。数据分级作为一种简单的控制方法,其优点是系统能执行“信息流控制”,可避免非法的信息流动。
(三)数据库的备份与恢复
数据库万一遭受不测被摧毁,数据库的备份就是最后的一张牌了。有了备份就可以恢复系统运行。所以建立严格的数据备份与恢复管理WN是保障所有网络数据库系统安全的有效手段。数据备份不仅要保证备份数据的完整性而且要建立详细的备份数据。系统恢复时使用不完整或日期不正确的备份数据都会破坏系统数据库的完整性,导致严重的后果。恢复技术主要有:基于备份的恢复技术、基于备份和运行日志的恢复技术和基于多备份的恢复技术。基于备份的恢复技术周期性地恢复磁盘上的数据库内容或者转存到其他存储介质上,一旦数据库失效,它可将最近一次复制的数据库内容进行数据库恢复,将其内容复制到数据库中。一般来说,网络数据库的恢复可以通过磁盘镜像、数据库备份文件和数据库在线日志三种方式来完成。
(四)网络数据库的容灾系统设计
容灾就是为恢复数字资源和系统所提供的技术和设备上的保证,其主要手段是建立异地容灾中心。异地容灾中心首要保证的是受援中心数字资源的完整,其次是在完整数据基础上的系统恢复,基础技术就是数据的备份,如完全备份、增量备份或者差异备份。对于数据量比较小,数据重要性较小的一些资料文档性质的数据资源,可采取单点容灾的模式,主要是利用冗余硬件设备保护该网络内的某个服务器或是网络设备,以避免出现该点数据。还可选择IDC(互联网数据中心)数据托管服务来保障数据安全。如果要求容灾系统具有与主处理中心相当的原始数据采集能力和相应的预处理能力,则需要构建应用级容灾中心。这样的容灾系统在灾难发生、主中心瘫痪时,不但可以保证数据安全,而且可以保持系统的正常运行。