数据库的安全性保护措施包括【数据库系统的保护措施研究】

数据库的安全性保护措施包括【数据库系统的保护措施研究】,第1张

摘要 随着信息化、网络化水平的不断提升,数据信息越来越受到安全威胁,信息泄露、信息篡改等信息安全问题屡见不鲜,从个人隐私到企业的商业秘密,甚至到政府国家的核心机密,都出现了不同程度的信息安全问题。由于目前大部分重要数据都是通过数据库系统来存储的,因此,数据库安全保护尤其重要,如何保护数据库体统的安全,有效防范信息泄漏和篡改,成为一个重要的安全保障目标。本文研究了数据库系统具体的安全保护措施。

关键词 计算机;数据库系统;数据安全;保护措施

中图分类号 TP311 文献标识码 A 文章编号 1673-9671-(2012)071-0125-01

近年来,随着信息化、网络化水平的不断提升,数据信息越来越受到安全威胁,信息泄露、信息篡改等信息安全问题屡见不鲜,所有存在数据的地方,只要数据是有价值的,就存在风险,就有人会去想法子窃取、篡改、贩卖,从中牟利。从个人隐私到企业的商业秘密,甚至到政府国家的核心机密,都出现了不同程度的信息安全问题。由于目前大部分重要数据都是通过数据库系统来存储的,因此,数据库安全保护尤其重要,如何保护数据库,有效防范信息泄漏和篡改成为一个重要的安全保障目标。那么,如何才能更加有效地保护数据库安全,防范信息泄漏和篡改呢?

1 加强对数据库的访问控制

访问控制是允许或禁止访问资源的过程。基于角色的访问控制是一种数据库权限管理机制,它根据不同的职能岗位划分角色,资源访问权限被封装在角色中,而用户被赋予角色,通过角色来间接地访问资源。在给角色或用户授权时,必须遵循最小权限和特权分离的基本安全原则。明确数据库管理和使用职责分工,最小化数据库帐号使用权限,防止权利滥用。同时,要加强口令管理,使用高强度口令,删除系统默认帐号口令等。

2 建立严格的用户认证机制

数据库安全机制是用于实现数据库的各种安全策略的功能集合,正是由这些安全机制来实现安全模型,进而实现保护数据库系统安全的目标。口令认证方式是鉴别数据库系统用户身份最基本的方式。实施严格的账号和密码管理机制,是实现数据库系统安全的重点。

用户标识是指用户向系统出示自己的身份z明,最简单的方法是输入用户ID和密码。标识机制用于惟一标志进入系统的每个用户的身份,因此必须保证标识的惟一性。鉴别是指系统检查验证用户的身份z明,用于检验用户身份的合法性。标识和鉴别功能保证了只有合法的用户才能存取系统中的资源。由于数据库用户的安全等级是不同的,因此分配给他们的权限也是不一样的,数据库系统必须建立严格的用户认证机制。身份的标识和鉴别是DBMS对访问者授权的前提,并且通过审计机制使DBMS保留追究用户行为责任的能力。功能完善的标识与鉴别机制也是访问控制机制有效实施的基础,特别是在一个开放的多用户系统的网络环境中,识别与鉴别用户是构筑DBMS安全防线的第一个重要环节。

3 对重要数据信息进行加密

数据加密是保证数据库系统中数据保密性和完整性的有效手段。数据库系统的加密措施是指对数据库系统中的重要数据进行加密处理,确保只有当系统的合法用户访问有权限的数据时,系统才把相应的数据进行解密 *** 作,否则,数据库系统应当保持重要数据的加密状态,以防止非法用户利用窃取到的明文信息对系统进行攻击。要对数据库及其核心业务系统进行安全加固,保护在系统边界部署防火墙、IDS/IPS、防病毒系统等,并及时地进行系统补丁检测,安全加固。

4 部署一套数据库审计系统

对数据库系统及其所在主机进行实时安全监控、事后 *** 作审计,部署一套数据库审计系统,这一点尤为重要,相当于数据库安全的最后一道防线。事实表明,现在的数据泄漏和篡改事件都是“内部人员”作案为主,他们有合法的帐号口令,他们完全可以把自己伪装成一个“合法”的内部人员,堂而皇之的窃取数据库信息,根本不用任何攻击手段,防火墙、IDS/IPS之类的传统安全系统根本发现不了。因此,对数据库系统的使用进行监控和审计,最关键的就在于对内部人员的违规和误 *** 作进行监控和审计。而这,正是数据库审计系统的特长。

针对重要的数据库及其业务系统,部署一套数据库审计系统,可以达到以下目标:1)数据 *** 作实时监控:对所有外部或者内部用户对数据库和主机的各种 *** 作行为、内容,进行实时监控。2)高危 *** 作即时阻断:对于高危 *** 作能够实时阻断,干扰攻击或者违规行为的执行。3)安全预警:对于入侵和违规行为进行及时预警和告警,并指导管理员进行应急响应处理。4)事后调查取证:对于所有行为能够进行事后查询、取证、调查分析,出具各种审计报表报告。5)责任认定、事态评估:系统能够记录和定位谁、在什么时候、通过什么方式对数据库进行了什么 *** 作,以及 *** 作的结果和可能的危害程度。

5 保护访问数据库的进出网络通道

虽然防病毒软件和防火墙提供了一定级别的安全防护,但并不能因此认为网络通信就是安全的。数据库监听器作为连接数据库服务端得网络进程,正经受着巨大的攻击风险。首要的任务,是对监听过程进行密码保护,而改变默认端口也是确保数据库监听器安全的一种好办法。通过配置数据库监听器,可以使其允许或不允许客户IP地址的访问。这也是保护数据库不受非预期用户访问的简单而有效的方法。

总之,数据库系统安全防范是一个永久性的问题,只有通过不断的改进和完善安全手段,才能提高数据库系统的可靠性,保证数据库系统的正常运行。

参考文献

[1]顾树华搭建高可用Oracle数据库系统[J]华南金融电脑,2005,11

[2]谭国律微机系统下应用软件中的数据安全[J]计算机应用,2001,11

[3]田丽丽"979"对国内数据库系统提出新要求[N]中国图书商报,2007

[4]单德华,杨红艳,孙鸿雁大型数据存储与管理系统设计与实现[J]制造业自动化,2010,02

[5]赵莉莉,王引斌浅谈数据库系统的发展[A]山西省科技情报学会2004年学术年会论文集[C]2005

辛苦原创,请给分。

技术题:答:已知三个关系模式:

学生 S(S#,SNAME,AGE,SEX),其属性的含义为:学号,姓名,年龄,性别;

学习成绩 SC(S#,C#,GRADE) ,其属性的含义为:学号,课程号,成绩;

课程 C(C#,CNAME,TEACHER),其属性的含义为:课程号,课程名,教师。

(1)请用关系代数表达式描述查询:学号为‘S2’的学生所选课程的课程号。

答: Pi C#(Delta S#=‘S2’(S))其中Pi表示投影,Delta 表示选择

(2)完善下面的SQL语句片断。

答:

CREATE TABLE SC(

S# CHAR(10),

C# CHAR(10),

GRADE NUMBER(2),

primary key (S#,C#), /建立主码约束/

FOREIGN KEY REFERNCES S(S#), /在S#列上建立外码约束/

……

)

(3)用SQL查询块描述下列查询:

学生“李勇”所选选修的课程名。

答: SELECT CCNAME

FROM S, SC, C

WHERE S SNAME='李勇'

AND SS#=SCS#

AND CC#=SCC#;

统计每门课程的选课人数。

答:SELECT CCNAME, COUNT(SS#)

FROM SC, C, S

WHERE CC# = SCC#

AND SCS# = SS#

group by CCNAME;

在学生表中插入数据(‘1001’,‘王勇’,‘男’,19)

答:INSERT INTO S VALUES ('1001','王勇','男',19);

COMMIT;

安全题:

答:不加密的明文传送可能导致的所有后果包括数据的保密性、完整性、可用性、可控性、可查性等都可能遭到破坏,如**、丢失、不完整、泄密、破坏、篡改、替换等。

此问题解决措施可以采用文件安全加密传输。 安全传输的主要过程

(1)加密的过程 :不可抵赖性可非对称加密算法和HASH函数实现,即数字签名过程如下:

1) 使用HASH算法将主机A要发送的文件生成摘要

2) 利用主机A的私钥加密1中生成的摘要

(2)加密过程由对称密码算法实现:

1) 用对称密码算法对文件进行加密生成加密后的文件传输

2) 将数字签名、对称密码算法的密钥、加密后的文件打包在一起,使用主机B的公钥进行加密

3) 将生成的整个密文文件发送给主机B

(3)解密的过程

1) 主机B得到密文,使用自己的私钥解密,得到数字签名、对称密钥和加密后的文件

2) 主机B用对称密钥解密加密文件,再用HASH函数生成摘要

3) 主机B使用主机A的公钥验证数字签名的正确性(校验HASH散列值)

部分航空物探项目是带有一定密级的,其项目所取得的成果资料属于保密数据,这部分数据也存储在本系统的数据库中。因此,需防止保密数据被窃走或蓄意破坏,如越权提取数据库保密数据或在通信线路上进行窃听等。对这样的威胁最有效的解决方法就是对数据进行加密处理,把可读的保密数据转化为密码数据,以加密格式存储和传输,在使用时再解密。

航空物探保密项目的密级分机密、秘密、绝密3个密级。本系统仅对保密项目数据进行加密处理,机密和秘密项目资料采用64位密钥进行加密,绝密项目资料采用128位密钥进行加密,非保密项目数据不做任何加密处理。进入资料采集库中的数据通过正确性检查后,归档入库进入资料库时,系统根据设置的项目密级进行自动加密。用户也可以通过加密-解密功能对资料库中的数据进行加密或解密。相同类型的加密数据与未加密数据均存储在资料库同一张表的同一字段中,但在数据加密-解密记录表数据库(表3-8)中,记录了加密数据库表代码和字段代码。当用户获得授权访问保密数据时,系统根据该表中的记录自动对数据进行解密。

表3-8 数据加密-解密记录表数据库结构

一、数据加密与解密

根据密钥类型不同将现代密码技术分为两类:对称加密算法(秘密钥匙加密)和非对称加密算法(公开密钥加密)。对称钥匙加密系统是加密和解密均采用同一把秘密钥匙,而且通信双方都必须获得这把钥匙,并保持钥匙的秘密。非对称密钥加密系统采用的加密钥匙(公钥)和解密钥匙(私钥)是不同的。

对称加密算法用来对敏感数据等信息进行加密,常用的算法包括:DES(Data Encryption Standard),数据加密标准,速度较快,适用于加密大量数据的场合;3DES(Triple DES),是基于DES,对一块数据用三个不同的密钥进行三次加密,强度更高;AES(Advanced Encryption Standard),高级加密标准,速度快,安全级别高。常见的非对称加密算法有:RSA,由RSA公司发明,是一个支持变长密钥的公共密钥算法,需要加密的文件快的长度也是可变的;DSA(Digital Signature Algorithm),数字签名算法,是一种标准的DSS(数字签名标准)。

本系统采用AES和DES加密算法对数据库数据进行加算或解密(图3-4)。

图3-4 数据库数据加密-解密过程

AES加密算法是美国国家标准和技术协会(NIST)2000年10月宣布通过从15种候选加密算法中选出的一项新的密钥加密标准,于2002年5月26日制定了新的高级加密标准(AES)规范。

AES算法基于排列(对数据重新进行安排)和置换(将一个数据单元替换为另一个)运算,采用几种不同的方法来执行排列和置换运算。它是一个迭代的、对称密钥分组的密码,可以使用128、192和256位密钥,并且用128位(16字节)分组加密和解密,数据通过分组密码返回的加密数据的位数与输入数据相同。迭代加密使用一个循环结构,在该循环中重复置换和替换输入数据。

DES算法把64位的明文输入块变为64位的密文输出块,它所使用的密钥也是64位。首先,DES把输入的64位数据块按位重新组合,并把输出分为L0、R0两部分,每部分各长32位,并进行前后置换(输入的第58位换到第一位,第50位换到第2位,依此类推,最后一位是原来的第7位),最终由L0输出左32位,R0输出右32位。根据这个法则经过16次迭代运算后,得到L16、R16,将此作为输入,进行与初始置换相反的逆置换,即得到密文输出。

二、日志跟踪

为了有效地监控航空物探保密数据的访问,确保保密数据安全,本系统针对保密数据开发了保密数据访问日志跟踪功能。该功能类似于“摄像机”,把访问数据库中保密数据的时间、用户、IP地址等信息记录在数据库的日志库表中,以备侦查。

首先,对保密数据进行日志跟踪定义,即对用户的哪些 *** 作进行跟踪。系统提供了对用户的查询、新增、修改、删除4种 *** 作进行跟踪功能,可以根据需要进行选择其一或多个(图3-5)。

日志跟踪定义生效后,系统自动对用户实施跟踪,并记录用户登录名、登录和退出时间(年/月/日,时/分/秒)、登录计算机的IP地址,用户对数据库数据所进行的查询、新增、修改、删除 *** 作。系统还提供了跟踪日志记录查询、打印、导出Excel表格文件等功能,便于数据库管理人员使用。

图3-5 数据库日志跟踪设置

三、数据提取安全机制

数据提取是航空物探信息系统向地质、地球物理等领域的科研人员提供数据服务的重要内容之一。防止越权提取数据,保证数据安全,是本系统提供优质、高效服务的前提。

越权提取数据是两个方面的问题。一是用户在没有获得授权情况窃取数据,此问题属系统使用安全。二是获得授权的用户擅自扩大提取数据的范围,“顺手牵羊”多提取数据。针对该问题,本系统采用以下机制(图3-6)。

图3-6 数据库数据提取安全机制模型

首先由用户(需要数据的单位或个人)提出使用数据申请,填写使用数据审批表。该表包含申请号、申请人、使用数据的范围(经纬度坐标)、审批人、审批日期、使用数据目的等信息。

用户申请获批准后,与中心签订资料使用保密协议。系统管理员授予用户“数据提取权”,根据批准的申请设置提取数据的范围,和数据提取权的有效期限。

在有效期限内,用户可以提取设定范围内的数据。同时,系统自动在数据提取记录表中记录用户数据提取日志(记录提取数据的范围、数据测量比例尺、数据来源的库表、数据提取人和提取日期等),以备查系统数据安全。

有人说,数据库管理员(DBA)有三个基本任务。按照重要性大小的顺序进行排列,它们分别是:保护数据、保护数据再保护数据。

虽然数据完整性显然是DBA的首要职责(如果数据“质量”不好的话,谁在乎数据库是不是可用的或快速的),不过除此之外,他还有很多其它工作要做。下面就列出了一个DBA日常执行的实际工作。(有些任务是所有DBA通用的,其它的则是需要在某些特殊的数据库环境才需要完成的)。

DBA的一般任务

◆安装、配置、升级和迁移

虽然系统管理员通常负责安装、维护服务器上的硬件和 *** 作系统,不过数据库软件的安装通常是由DBA负责的。要胜任这一工作需要了解什么样的硬件配置才能使一个数据库服务器发挥最大的作用,并且还要就这些硬件需求与系统管理员进行沟通。在完成了上述工作之后,DBA就着手安装数据库软件,并从各种不同的产品配置选项中选择一个与硬件匹配的并且能使数据库效率最高的方案。当有新版本的数据库或者补丁包发布时,决定是否要用或者用哪一个升级或补丁包也是DBA的工作之一。如果企业购买了新的数据库服务器,那么DBA也要负责将数据从原有数据库服务器中迁移到新的服务器上来。

◆备份和恢复

DBA负责为他们所管理的数据库制定、实施并定期测试数据库备份和恢复方案。即使在一个大型企业中有一个单独的系统管理员专门负责数据库的备份工作,不过最终的决定权还是由DBA掌握---他来确保备份工作要如期完成,并且在数据库出现故障执行恢复工作后,能包含所需要的所有文件。当数据库故障发生时,DBA需要知道如何使用备份使数据库返尽快回到正常状态,会丢失任何所完成的事务。数据库出现故障的原因可能又很多种,当出现故障时,DBA必须能很快就能判断出故障所在并采取有效的应对策略。从商业的角度来看,数据库备份是有成本的,DBA需要让企业的管理人员知道各种数据库备份方法的成本和风险。

◆数据库安全

因为数据库主要负责集中存储数据,这些数据有可能是非常机密并且非常有价值的,因此数据库往往是黑客甚至好奇的员工最感兴趣的目标。DBA必须了解所用数据库产品的详细安全模型、该数据库产品的用途、以及如何使用它来有效地控制数据存取。DBA最基本的三个安全任务是验证(设置用户帐户控制用户登录数据库)、授权(对数据库的各部分设置权限,防止非法用户访问)、审计(跟踪用户执行了什么数据库 *** 作)。就目前而言,因为监管法规比如Sarbanes-Oxley 和HIPAA的报告要求必须得到满足,这使得数据库审计工作尤为重要。

◆存储和容量规划

创建数据库得一个主要目就是存储和检索数据,所以规划需要多少磁盘存储空间和监测可用的磁盘存储空间是DBA的关键责任。观察数据的增长趋势也是非常重要的,因为只有这样DBA才能向企业的管理层提出一个长远的存储容量规划。

◆性能监控和调整

DBA负责定期监测数据库服务器,从而找出数据库瓶颈(使数据库性能降低的某些部分)并制定补救措施。对数据库服务器的调整工作要在多个层次上完成。数据库服务器硬件的性能以及 *** 作系统的配置都可能成为造成数据库瓶颈的因素,同样数据库软件的配置也是如此。数据库在磁盘驱动器上的物理安装方式以及索引的选择对于数据库的性能也有影响。数据库查询的编码方式也可能显著改变查询结果返回的快慢程度。DBA需要了解在上述各个层次需要用哪些监测工具,以及如何使用它们来调整系统。从应用设计一开始把性能因素考虑在内是积极主动调整的反映,而不是等待问题发生之后再去修复它们。DBA还需要与数据库应用开发人员紧密合作,以确保应用是按照最佳方式开发出来的,并且能带来良好的性能。

◆疑难解答

当数据库服务器出现某些差错的时候,DBA需要知道如何快速确定问题所在并正确地解决问题,保证不丢失数据或使情况变得更糟。

特殊环境下DBA的任务

除了上述基本职责外,由于某些特殊的数据库环境,一些DBA们还需要掌握一些特别的技巧。

◆高可用性

随着互联网时代的到来,过去那种数据库只需要在白天正常运转的时代已经结束了,现在数据库必须能够提供须提供每周7天每天24小时的全天候服务。网站也已经从静态的、预定义的内容发展成为动态创建的内容---在页面请求发送过来之后,使用数据库创建页面布局。如果网站是全天候可用的,那么支持网站的基础数据库也必须能够全天候工作。在这种环境下管理数据库,DBA需要知道哪些类型的维护业务可以在线完成(也就是在不中断数据库运行的情况下),以及在数据库有可能关闭时制定一个维护“期限”。此外,DBA还要规划为冗余的数据库硬件和软件组件,以便万一数据库出现故障时,冗余系统仍然能够继续要用户提供服务。DBA可以使用在线备份、集群、复制和应急数据库等技术和工具确保更高的可用性。

◆大型数据库(VLDB)

随着企业发现数据库技术的用途越来越多,他们往往用它来保存更多的数据。此外,数据库存储的数据类型也发生了变化,从过去行列整齐的结构化数据发展现在的非结构化数据,比如文件、图像、声音、甚至指纹。这两种趋势带来的结果是一样的:那就是大型数据库(VLDB)的出现。要管理VLDB,DBA需要特殊的技能。过去被认为是非常简单的 *** 作比如复制一个表,所需要的时间可能是非常巨大的。为了保证数据库扩展到非常大的规模时仍然是可管理的,DBA需要了解一些技术,比如表分割(Oracle)、联合数据库(SQL Server)和复制(MySQL)等等。

◆数据提取、转化和加载(ETL)

在数据仓库环境中,一个非常关键的任务是如何有效地加载数据仓库或数据集市中的大量数据,而这些数据是从多个现有的生产系统中提取的。通常情况下,这些生产系统的格式与数据仓库中的标准化定义是不同的,所以数据在加载之前必须要转化(或“清洗”)。在一个特定的公司里,提取数据可能是也可能不是DBA的责任,但是DBA需要确定什么样的提取是有用的,它是数据库决策团队一个关键组成部分。

数据库技术的主要特点包括数据可靠性、数据一致性、数据隔离性、数据持久性、数据安全性以及高效性等方面。其中,数据可靠性指的是数据库能够保证数据的完整性和正确性;数据一致性指的是在多用户并发 *** 作下,数据库能够保证数据的一致性;数据隔离性是指在多个用户并发访问同一个数据时,数据库能够保证每个用户只能看到自己对这些数据所做的修改;数据持久性指的是数据库能够保证数据的永久存储;数据安全性保证数据库中数据的机密性和安全性;高效性则指数据库能够快速准确地执行各种查询和 *** 作。

以上就是关于数据库的安全性保护措施包括【数据库系统的保护措施研究】全部的内容,包括:数据库的安全性保护措施包括【数据库系统的保护措施研究】、计算机专业高手帮解两道题,信息安全和数据库技术、系统数据安全等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/10103145.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存