数据库概论04.ppt_第1页
数据库概论04.ppt_第2页
数据库概论04.ppt_第3页
数据库概论04.ppt_第4页
数据库概论04.ppt_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第四章 数据库安全性,DBMS提供统一的数据管理和控制功能,其中很重要的就是数据保护,包括有数据的安全性和数据的完整性,达到保证数据的安全可靠和正确有效的目的。,问题的提出 数据库的一大特点是数据可以共享 但数据共享必然带来数据库的安全性问题 数据库系统中的数据共享不能是无条件的共享 数据库中数据的共享是在DBMS统一的严格的控制之下的共享,即只允许有合法使用权限的用户访问允许他存取的数据。,什么是数据库的安全性 数据库的安全性是指保护数据库,防止因用户非法使用数据库造成数据泄露、更改或破坏。 什么是数据的保密 数据保密是指用户合法地访问到机密数据后能否对这些数据保密。,4.1 计算机安全性概

2、论,安全性可分为: 计算机系统的安全性。 数据库的安全性;,计算机系统 的安全性,技术安全类,管理安全类,政策法律类,三类计算机系统安全性问题,4.1.2 可信计算机系统评测标准 为降低进而消除对系统的安全攻击,各国引用或制定了一系列安全标准 TCSEC (桔皮书)/TDI (紫皮书) CC标准,TDI/TCSEC标准的基本内容 TDI与TCSEC一样,从以下4个方面来描述安全性级别划分的指标: 安全策略 责任 保证 文档 每个方面又细分为若干项。,TCSEC(TDI)将系统划分为4组(division),共7个等级 D C(C1,C2) B(B1,B2,B3) A(A1) 按系统可靠或可信程

3、度逐渐增高 各安全级别之间具有一种偏序向下兼容的关系,即较高安全性级别提供的安全保护要包含较低级别的所有保护要求,同时提供更多或更完善的保护能力。,表4.1,表4.2列出了各安全等级对安全指标的支持情况。随着安全级别的由低到高,系统对各项安全指标的支持也从无到有。其中, 表示该级不提供对该指标的支持; 表示该级新增的对该指标的支持; 表示该级对该指标的支持与相邻低一级的等级一样; 表示该级对该指标的支持较下一级有所增加或改动。,表4.2 不同安全级别对安全指标的支持情况,有关各安全等级对安全策略、责任、保证和文档4个方面安全指标的支持情况这里就不详细展开了。 可以看出,支持自主存取控制的DBM

4、S大致属于C级,而支持强制存取控制的DBMS则可以达到B1级。当然,存取控制仅是安全性标准的一个重要方面(即安全策略方面)不是全部。为了使DBMS达到一定的安全级别,还需要在其他3个方面提供相应的支持。例如,审计功能就是DBMS达到C2以上安全级别必不可少的一项指标。,4.2 数据库安全性控制,数据库的安全性:是指保护数据库以防止不合法的使用,避免数据的泄密、非法更改和破坏。 从数据库角度而言,安全性分成系统安全性和自然环境安全性两类。,4.2.1 数据库的安全模型 在计算机系统中,安全措施是一级一级层层设置的。计算机安全控制模型如图4.2所示,DBMS安全模型如图4.3所示。,计算机系统中的

5、安全模型,图4.2 计算机系统的安全模型,用户,权限,登录,对象,数据库安全性控制,图4.3 DBMS安全模型,角色,4.2.2 安全性控制的一般方法 用户标识与鉴定 存取控制 视图 审计 密码存储,1. 用户标识与鉴定,这是DBS提供的最外层安全保护措施。用户访问数据库之前,必须先标识自己的名字或身份,由系统核实,通过鉴定后才提供机器使用权。 用户登录成功才是数据库的合法用户,才能与数据库建立连接。,存取控制机制主要包括两部分: 定义用户权限,并将用户权限登记到数据字典中。 在数据库系统中对存取权限的定义称为授权(Authorization)。这些授权定义经过编译后存放在数据字典中,被称作“

6、安全规则”或“授权规则”。,2. 存取控制,存取权限包括两方面的内容,一方面是要存取的数据对象,另一方面是对此数据对象进行操作的类型。 系统必须提供适当的语义定义用户权限。 对一个用户定义存取权限就是要定义这个用户可以在哪些数据对象上进行哪些类型的操作。,合法权限检查。 每当用户发出存取数据库的操作请求后(请求一般包括操作类型、操作对象和操作用户等信息),DBMS查找数据字典,根据安全规则进行合法权限检查,若用户的操作请求超出了定义的权限,系统将拒绝执行此操作。 用户权限定义和合法权限检查机制一起组成了DBMS的安全子系统。, 用户分类 一般可对数据库的用户分为四类: 系统用户(或DBA) 数

7、据对象的属主(Owner) 一般用户 公共用户(Public), 系统用户 具有至高无上的系统控制与操作特权的用户,一般是指系统管理员或数据库管理员DBA,他们拥有数据库系统可能提供的全部权限。, 数据对象的属主 是创建某个数据对象的用户,如一个表属主创建了某个表,具有对该表更新、删除、建索引等所有的操作权限。, 一般用户 是指那些经过授权被允许对数据库进行某些特定的数据操作的用户。 公共用户 是为了方便共享数据操作而设置的,它代表全体数据库用户。, 存取权限 用户使用数据库的方式称为权限。权限分为如下两类: 访问数据权限 修改数据库模式权限, 访问数据权限 读数据权限:允许用户读数据,但不能

8、修改数据; 插入数据:允许用户插入新的数据,但不能修改数据; 修改权限:允许用户修改数据,但不能删除数据; 删除数据:允许用户删除数据。, 修改数据库模式的权限 索引权限:允许用户创建索引和删除索引; 资源权限:允许用户创建新的关系; 修改权限:允许用户在关系结构中加入和删除属性; 撤消权限:允许用户撤消关系。, 角色 一个角色(Role)一般是指一个机构内的一个称谓或一个任务的集合。为了方便,可把用户归属不同的角色,对不同的角色有不同的授权。,在SQL中,一个角色是一组被命名的零个或多个特权。授权一个角色给一个用户,则允许该用户使用被授权的角色所拥有的每一个特权。 用户与角色之间存在多对多的

9、联系;一个用户允许被授予多个角色使用,同一个角色的使用被授权予多个用户。一个角色的使用也可以被授权于另一个角色。,图4.4 用户与角色的关系, 常用存取控制方法 自主存取控制(Discretionary Access Control ,简称DAC) 强制存取控制(Mandatory Access Control, 简称 MAC),自主存取控制(DAC) 自主存取控制是基于存取权限的概念,可以概括为:一个主体只能在获得对一个客体的操作权限后才能对客体进行操作;主体对它创建的客体拥有所有权,自然获得对客体的一切操作权限;一个主体可以把对某个客体的操作权限赠送给另外一个主体,也可以收回该权限。,自主

10、存取控制方法实现简单,控制非常灵活,效率高,但存在安全隐患,容易被特洛伊马(Trojan horse)方法攻破。 大型数据库管理系统几乎都支持自主存取控制,目前的SQL标准也对自主存取控制提供支持,这主要通过SQL的GRANT语句和REVOKE语句来实现。,1. 授权 - GRANT 授权就是给予用户一定的访问特权。 有两种授权: 授予某类数据库用户的特权,只能由DBA授予; 授予对某些数据对象进行某些操作的特权,可以由DBA授予,也可由数据对象的创建者授予。,不同对象允许的操作权限:,一般格式: GRANT 操作权限|ALL ON TO WITH GRANT OPTION;,例60:给用户U

11、SER01授予在xs_kc表上的SELECT、INSERT和UPDATE的权力。 grant select,insert,update on xs_kc to user01 例61:给用户USER01和USER02授予在xs表上的SELECT和INSERT。 grant select,insert on xs to user01,user02 例62:给用户USER01授予在kc表上的所有权力。 grant all on kc to user01 例63:给所有用户授予xs表上的SELECT权力。 grant select on xs to public,例64:给LNX用户授予对表xs的SE

12、LECT权力,并使该用户具有给其它用户授予相同权力的用户。 grant select,insert on xs to user01 with grant option 例65:把查询xs_kc表和修改成绩的权限授予用户USER01。 grant select,update(成绩) on xs_kc to user01,2. 收回授权 - REVOKE 收回一些已授予用户的权限。 一般格式: REVOKE 操作权限|ALL ON FROM , |PUBLIC;,说明: 授予链:A - B, B - C,C - D,。 一旦A从B那里收回权限,则B授予C的,C授予D的使用权也一起收回; 收回属性列

13、的操作权限要通过收回整个表的操作权来进行; 当删除表时,SQL自动地删除对该表授予的各种权限。,例66:从用户user01收回对xs表的所有权限。 revoke all on xs to user01 cascade,强制存取控制(MAC) 每一个数据对象被标以一定的密级,每一个用户也被授予某一个级别的许可证。对于任意一个对象,只有具有合法许可证的用户才可以存取。强制存取控制因此相对比较严格。,3. 视图机制 为不同的用户定义不同的视图,可以限制各个用户的访问范围。 通过视图机制把要保密的数据对无权存取的用户隐藏起来,从而自动地对数据提供一定程度的安全保护。,4. 审计 功能:把用户对数据库的所有操作自动记录下来放入审计日志(Audit Log)中。DBA可以利用审计跟踪的信息,重现导致数据库现有状况的一系列事件,找出非法存取数据库数据的人、时间和内容等。,5. 数据加密 把数据用密码形式存储在磁盘上。 为了更好地保证数据库的安全性,用密码存储口令

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论