[精选]数据库安全性概述.pptx
《[精选]数据库安全性概述.pptx》由会员分享,可在线阅读,更多相关《[精选]数据库安全性概述.pptx(40页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第4章章 数据库安全性数据库安全性 数据库的是指保护数据库以防止不合法的使用所造成的保护数据库以防止不合法的使用所造成的数据泄露、更改或破坏。数据泄露、更改或破坏。安全性问题不是数据库系统所独有的,所有计算机系统都有这个问题。只是在数据库系统中大量数据集中存放,而且为许多用户直接共享,从而使安全性问题更为突出。系统安全保护措施是否有效是数据库系统的主要性能指标之一。数据库的破坏一般来自以下四个方面:系统故障;并发所引起的数据不一致;输入或更新数据库数据有误;人为的破坏。所谓数据库安全Security,就是要防止其中第四种。4.1 计算机安全性概述计算机安全性概述4.1.1 计算机系统的三类安
2、全性问题计算机系统的三类安全性问题 计算机系统安全性,指为计算机系统建立和采取的各种安全保护措施,以保护计算机系统中的硬件、软件及数据,防止其因偶然或恶意的原因使系统遭到破坏,数据遭到更改或泄露等。计算机安全不仅涉及计算机系统本身的技术问题、管理问题,还涉及法学、犯罪学、心理学的问题。其内容包括计算机安全理论与策略;计算机安全技术、安全管理、安全评价、安全产品以及计算机犯罪与侦察、计算机安全法律、安全监察等等。概括起来,计算机系统的安全性问题可分为三大类,即:技术安全类、管理安全类和政策法律类技术安全类、管理安全类和政策法律类。1、技术安全、技术安全 是指计算机系统中采用具有一定安全性的硬件、
3、软件来实现对计算机系统及其所存数据的安全保护,当计算机系统受到无意或恶意的攻击时仍能保证系统正常运行,保证系统内的数据不增加、不丧失、不泄露。2、管理安全、管理安全 技术安全之外的,诸如软硬件意外故障、场地的意外事故、管理不善导致的计算机设备和数据介质的物理破坏、丧失等安全问题,视为管理安全。3、政策法律类、政策法律类 指政府部门建立的有关计算机犯罪、数据安全保密的法律道德准则和政策法规、法令,本书只讨论技术安全类。4.1.2 可信计算机系统评测标准可信计算机系统评测标准 为降低进而消除对系统的安全攻击,尤其是弥补原有系统在安全保护方面的缺陷,在计算机安全技术方面逐步建立了一套可信标准。在目前
4、各国所引用或制定的一系列安全标准中,最重要的当推1985年 国防部DoD正式公布的 DoD可信计算机系统评估标准Trusted puter System Evaluation Criteria,简记为TCSEC1或DoD85 制定这个标准的目的主要有:1.提供一种标准,使用户可以对其计算机系统内敏感信息安全操作的可信程度做出评 估。2.给计算机行业的制造商提供一种可循的指导规则,使其产品能够更好的满足敏感应用 的安全需求。TCSEC又称桔皮书,1991年4月 NCSC国家计算机安全中心公布了可信计算机系统评估标准关于可信数据库系统的解释 Trusted Database Interpretat
5、ion 简记为TDI,即紫皮书。将TCSEC扩展到数据库管理系统。TDI中定义了数据库管理系统的设计与实现中需满足和用以进行安全性级别评估的标准。以下我们着重介绍 TDI/TCSEC 标准的基本内容。根据计算机系统对上述各项指标的支持情况,TCSECTDI将系统划分为四组division七个等级,依次是D;CC1,C2;BB1,B2,B3;AA1,按系统可靠或可信程度逐渐增高,如表9.1所示。在TCSEC中建立的安全级别之间具有一种偏序向下兼容的关系,即较高安全性级别提供的安全保护要包含较低级别的所有保护要求,同时提供更多或更完善的保护能力。下面,我们简略地对各个等级作一介绍。D级级是最低级别
6、。保存D级的目的是为了将一切不符合更高标准的系统,统统归于D组。如DOS就是操作系统中安全标准为D的典型例子。它具有操作系统的基本功能,如文件系统,进程调度等,但在安全性方面几乎没有专门的机制来保障。C1级级只提供了非常初级的自主安全保护。能够实现对用户和数据的别离,进行自主存取控制DAC,保护或限制用户权限的传播。现有的商业系统往往稍作改进即可满足要求。C2级级实际是安全产品的最低档次,提供受控的存取保护,即将C1级的DAC进一步细化,以个人身份注册负责,并实施审计和资源隔离。很多商业产品已得到该级别的认证。到达C2级的产品在其名称中往往不突出“安全Security这一特色,如操作系统中Mi
7、crosoft的Windows NT 3.5,数字设备公司的Open VMS VAX 6.0和6.1。数据库产品有Oracle公司的Oracle 7,Sybase公司的 SQL Server 11.0.6 等。B1级级提供标记安全保护。对系统的数据加以标记,并对标记的主体和客体实施强制存取控制MAC以及审计等安全机制。B1级能够较好地满足大型企业或一般政府部门对于数据的安全需求,这一级别的产品才认为是真正意义上的安全产品。满足此级别的产品前一般多冠以“安全Security或“可信的Trusted字样,作为区别于普通产品的安全产品出售。例如,操作系统方面,典型的有数字设备公司的SEVMS VAX
8、 Version 6.0,惠普公司的HP-UX BLS release 9.0.9+。数据库方面则有Oracle公司的Trusted Oracle 7,Sybase公司的Secure SQL Server version 11.0.6,Informix公司的Incorporated INFORMIX-OnLine/Secure 5.0等。B2级级提供结构化保护。建立形式化的安全策略模型并对系统内的所有主体和客体实施DAC和MAC。从互连网上的最新资料2看,经过认证的、B2级以上的安全系统非常稀少。例如,符合B2标准的操作系统只有Trusted Information Systems公司的Tru
9、sted XENIX一种产品,符合B2标准的网络产品只有Cryptek Secure munications公司的LLC VSLAN一种产品,而数据库方面则没有符合B2标准的产品。B3级级 安全域。该级的TCB必须满足访问监控器的要求,审计跟踪能力更强,并提供系统恢复过程。A1级级 验证设计,即提供B3级保护的同时给出系统的形式化设计说明和验证以确信各安全保护真正实现。B2以上的系统标准更多地还处于理论研究阶段,产品化以至商品化的程度都不高,其应用也多限于一些特殊的部门如 队等。但 正在大力开展安全产品,试图将目前仅限于少数领域应用的B2安全级别或更高安全级别下放到商业应用中来,并逐步成为新的
10、商业标准。可以看出,支持自主存取控制的DBMS大致属于C级,而支持强制存取控制的DBMS则可以到达B1级。当然,存取控制仅是安全性标准的一个重要方面即安全策略方面不是全部。为了使DBMS到达一定的安全级别,还需要在其它三个方面提供相应的支持。例如审计功能就是DBMS到达C2以上安全级别必不可少的一项指标。4.2 数据库安全性控制数据库安全性控制 对于数据库的安全保密方式可以有系统处理的和物理的两个方面。所谓物理的是指对于强力逼迫透露口令、在通讯线路上窃听等行为而采取的保护措施。这些都不在我们讨论之列,目前我们只讨论在计算机系统中采取的措施。在一般计算机系统中,安全措施是一级一级层层设置的,例如
11、可以有如下模型:用户DBMSOSDB用户标识和鉴别 存取控制 操作系统安全保护 数据密码存储 在上图的安全模型中,用户要求进入计算机系统时,系统首先根据输入的用户标识进行用户身份鉴定,只有合法的用户才准许进入计算机系统。对已进入系统的用户,DBMS还要进行存取控制,只允许用户执行合法操作。数据库安全控制的常用方法:用户标识和鉴定用户标识和鉴定存取控制存取控制视图视图审计审计密码存储密码存储4.2.1 用户标识与鉴别用户标识与鉴别 系统提供的最外层安全保护措施。系统提供的最外层安全保护措施。1、用一个用户名或者用户标识号来标明用户身份。系统鉴别此用户是否是合法用户,假设是,则可以进入下一步的核实
12、;假设不是,则不能使用计算机。2、口令,为了进一步核实用户,系统常常要求用户输入口令。为保密起见,用户在终端输入的口令不显示在屏幕上,系统核对口令以鉴别用户身份。3、系统提供一个随机数,用户根据预先约定好的某一过程或者函数进行计算,系统根据用户计算结果是否正确进一步鉴定用户身份。用户标识和鉴定可重复屡次。4.2.2 存取控制存取控制 对于通过鉴定的用户还要根据预先定义好的用户权限进行存取控制,保证用户只能存取他有权存取的数据。所谓用用户权限户权限是指不同的用户对于不同的数据对象允许执行的操作指不同的用户对于不同的数据对象允许执行的操作权限。权限。它由两局部组成,一是数据对象数据对象,二是操作类
13、型操作类型。存取控制机制主要包括两局部:1定义用户权限定义用户权限,将用户权限登记到数据字典中。2合法权限检查合法权限检查,每当用户发出存取数据库的操作请求后DBMS查找数据字典,根据安全规则进行合法权限检查,假设用户的操作请求超出了定义的权限,系统将拒绝执行此操作。用户权限定义和合法权检查机制一起组成了DBMS的安全子系统。当前大型的DBMS一般都支持C2级中的 自主存取自主存取控制控制 DAC有些DBMS同时还支持B1级中的 强制存取控制强制存取控制MAC。在自主存取控制中,用户对于不同的数据对象有不同的存取权限,不同的用户对同一对象也有不同的权限,而且用户还可将其拥有的存取权限转授给其他
14、用户。因此自主存取控制非常灵活。在强制存取控制中,每一个数据对象被标以一定的 ,每一个用户也被授予某一个级别的许可证。对于任意一个对象,只有具有合法许可证的用户才可以存取。强制存取控制因此相比照较严格。4.2.3自主存取控制方法自主存取控制方法 大型数据库管理系统几乎都支持自主存取控制,目前的SQL标准也对自主存取控制提供支持,这主要通过SQL 的GRANT语句语句和REVOKE语句语句来实现。用户权限是由两个要素组成的:数据对象数据对象和操作类型操作类型。定义一个用户的存取权限就是要定义这个用户可以在哪些数定义这个用户可以在哪些数据对象上进行哪些类型的操作据对象上进行哪些类型的操作。在数据库
15、系统中,定义存取权限称为授权授权Authorization。关系数据库系统中的存取权限关系数据库系统中的存取权限 用户权限定义中数据对象范围越小授权子系统就越灵活。例如上面的授权定义可精细到字段级,而有的系统只能对关系授权。授权粒度越细,授权子系统就越灵活,但系统定义与检查权限的开销也会相应地增大。1、GRANTGRANT语句的一般格式:GRANT,.ON TO,.WITH GRANT OPTION;语义:将对指定操作对象的指定操作权限授予指定的用户 中选用WITH GRANT OPTION时,被授予的用户有权将获得的权限再授予其他用户。发出GRANT命令的可以是DBA、数据库对象创立者即属主
16、Owner、拥有该权限的用户;按受权限的用户可以是一个或多个具体用户、也可以是PUBLIC全体用户。例例1 1 把查询把查询S S表权限授给用户表权限授给用户U1U1 GRANT SELECT ON TABLE S TO U1;GRANT SELECT ON TABLE S TO U1;例例2 2 把对把对S S表和表和C C表的全部权限授予用户表的全部权限授予用户U2U2和和U3U3 GRANT ALL PRIVILIGES ON TABLE S,C TO U2,U3;GRANT ALL PRIVILIGES ON TABLE S,C TO U2,U3;例例3 3 把对表把对表SCSC的查询
17、权限授予所有用户的查询权限授予所有用户 GRANT SELECT ON TABLE SC TO PUBLIC;GRANT SELECT ON TABLE SC TO PUBLIC;例例4 4 把查询把查询S S表和修改学生学号的权限授给用户表和修改学生学号的权限授给用户U4U4 GRANT UPDATE GRANT UPDATES S,SELECT ON TABLE S TO U4;,SELECT ON TABLE S TO U4;例例5 5 把把对对表表SCSC的的INSERTINSERT权权限限授授予予U5U5用用户户,并并允允许许他他再再将将此此权限授予其他用户权限授予其他用户 GRAN
18、T INSERT ON TABLE SC TO U5 WITH GRANT OPTION;GRANT INSERT ON TABLE SC TO U5 WITH GRANT OPTION;2、REVOKEGRANT语句的一般格式:REVOKE 权力,权力.ON 对象类型 对象名 FROM 用户,用户;语义:将对指定操作对象的指定操作权限从指定的用户回收例6 把用户U4修改学生学号的权限收回REVOKE UPDATES ON TABLE S FROM U4;例7 收回所有用户对表SC的查询权限REVOKE SELECT ON TABLE SC FROM PUBLIC;例8 把用户U5对SC表的I
19、NSERT权限收回REVOKE INSERT ON TABLE SC FROM U5 CASCADE;衡量授权子系统精巧程度的另一个尺度是能否提供与数据值有关的授权。上面的授权定义是独立于数据值的,即用户能否对某类数据对象执行的操作与数据值无关,完全由数据名决定。反之,假设授权依赖于数据对象的内容,则称为是与数据值有关的授权。有的系统还允许存取谓词中引用系统变量,如一天中的某个时刻,某台终端设备号。这样用户只能在某台终端、某段时间内存取有关数据,这就是与时间和地点有关的存取权限。另外,我们还可以在存取谓词中引用系统变量。如终端设备号,系统时钟等,这就是与时间地点有关的存取权限,这样用户只能在某
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 精选 数据库 安全性 概述
限制150内