第4章数据库安全性_第1页
第4章数据库安全性_第2页
第4章数据库安全性_第3页
第4章数据库安全性_第4页
全文预览已结束

付费下载

下载本文档

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

文档简介

第4章数据库安全性第4章数据库安全性第4章数据库安全性第4章数据库安全性数据库特点之一是DBMS提供统一的数据保护功能来保证数据的安全可靠和正确有效,数据库的数据保护主要包括数据的安全性和数据完整性。问题的提出:数据库的一大特点是数据可以共享,数据共享必然带来数据库的安全性问题,因为数据库中的数据不能是无条件的共享,例如,军事机密、国家机密、新产品实验数据、市场需求分析、市场营销策略、销售计划、客户档案、医疗档案、银行储蓄数据等。什么是数据库的安全性?数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄露、更改或破坏(p130)。数据库的安全性和计算机系统的安全性是紧密联系的。4.1计算机安全性概述由于数据库的安全性和计算机系统的安全性是紧密联系的,因此在讨论数据库的安全性之前先讨论计算机系统安全性。4。1.1计算机系统的三类安全性问题计算机系统安全性是指为计算机系统建立和采取的各种安全保护措施,以保护计算机系统中的硬件、软件及数据,防止其因偶然或恶意的原因使系统遭到破坏,数据遭到更改或泄露等。特别是Internet技术的发展,计算机安全性问题越来越重要。计算机安全不仅涉及到计算机系统本身的技术问题、管理问题,还涉及法学、犯罪学、心理学等问题。其内容包括多方面。概括起来,计算机系统的安全性问题分为三大类,即技术安全类、管理安全类和政策法律类.技术安全是指计算机系统中采用具有一定安全性的硬件、软件来实现对计算机系统及其所存数据的安全操作,当计算机系统受到无意或恶意的攻击时仍能保证系统正常运行,保证系统内数据不增加、不丢失、不泄露。管理安全是指由于管理不善导致的计算机设备和数据介质的物理破坏、丢失等软硬件意外故障以及场地的意外事故等安全问题.政策法律是指政府部门建立的有关计算机犯罪、数据安全保密的法律道德准则和政策法规、法令.我们只讨论技术安全。4.1。2安全标准简介随着计算机技术特别是Internet技术的发展,对各种计算机系统安全性要求越来越高。因此要建立一套可信的安全标准,才能规范和指导计算机系统的安全问题。4。2数据库安全性控制计算机系统中,数据库安全措施是一级一级层层设置,如下图所示:OSOSDBMS数据库数据数据库安全性控制的常用方法:用户标识和鉴别存取控制视图机制审计数据加密4。2.1用户标识与鉴别(Identification&Authentication)用户标识和鉴别是系统提供的最外层安全保护措施,其方法是由系统提供一定的方式让用户标识自己的名字或身份.主要手段是用户标识和口令。用户登录操作系统需要用户标识和口令。用户登录DBMS需要用户标识和口令。4。2。2存取控制数据库安全性所关心的主要是DBMS的存取控制机制。只有授权用户才能访问他权限范围内的数据。存取控制机制主要包括两部分内容:定义用户权限一个用户应该具有何种权限是一个管理问题和政策问题而不是技术问题,DBMS要有保证这些决定的执行功能。合法权限检查对发出存取数据请求的用户作合法权限检查。用户权限定义和合法权检查机制一起组成了DBMS的安全子系统。主要有两类存取控制方法:自主存取控制(目前大型DBMS一般都支持的C2级中的)和强制存取控制(部分DBMS支持的B1级中的)。1自主存取控制(DAC)方法在自主存取控制方法中,用户对于不同的数据库对象有不同的存取权限,不同的用户对同一对象也有不同的权限,而且用户还可将其拥用的存取权转授给其他用户.大部分DBMS都支持这种方法。SQL通过GRANT语句和REVOKE语句来实现。1。1授权(Authorization)与回收用户权限是由两个要素组成:数据库对象和操作类型。定义一个用户的存取权限就是要定义这个用户可以在哪些数据库对象上进行哪些操作。定义存取权限称为授权。取消存取权限称为回收。(1)授权在SQL中用GRANT语句实现将某些权限授予某个用户。DBA、数据库对象创建者或已经拥有该权限的用户均可授权。一般格式:GRANT<权限>[,<权限〉]。。。ON<对象类型〉<对象名〉[,ON<对象类型〉<对象名>]。.。TO〈用户〉[,〈用户>]。。.[WITHGRANTOPTION];说明:功能是将对数据库对象的指定操作权限授予用户.WITHGRANTOPTION只有指定该选项,用户才能传播权限.例1:把查询Student表权限授给用户U1。GRANTSELECTONTABLEStudentTOU1;例2:把对Student表和Course表的全部权限授予用户U2和U3。GRANTALLPRIVILIGESONTABLEStudent,CourseTOU2,U3;例3:把对表SC的查询权限授予所有用户。GRANTSELECTONTABLESCTOPUBLIC;例4:把查询Student表和修改学生学号的权限授给用户U4。GRANTUPDATE(Sno),SELECTONTABLEStudentTOU4;对属性列的授权时必须明确指出相应属性列名。例5:把对表SC的INSERT权限授予U5用户,并允许他再将此权限授予其他用户。GRANTINSERTONTABLESCTOU5WITHGRANTOPTION;(2)回收权限授予的权限可以由DBA或授权者用REVOKE语句收回。一般格式:REVOKE<权限〉[,〈权限〉]..。〈对象类型><对象名〉[,ON<对象类型><对象名〉]。。。FROM<用户〉[,<用户〉].。。[CASCADE|RESTRICT];说明:CASCADE级联回收权限RESTRICT限制,如果该用户把权限授予其他用户,则不允许回收权限。例8:把用户U4修改学生学号的权限收回。REVOKEUPDATE(Sno)ONTABLEStudentFROMU4;例10:把用户U5对SC表的INSERT权限收回。REVOKEINSERTONTABLESCFROMU5CASCADE;(3)创建数据库模式的权限GRANT和REVOKE语句向用户授予或收回对数据的操作权限.对数据库模式的授权则由DBA在创建用户时实现。CREATEUSER语句的一般格式:CREATEUSER〈username〉[WITH][DBA|RESOURCE|CONNECT];说明:只有系统的超级用户才有权创建一个新的数据库用户新创建的数据库用户有三种权限:CONNECT、RESOURCE和DBA拥用CONNECT权限的用户只能登录数据库拥用RESOURCE权限的用户能创建基本表和视图,成为所创建对象的属主.拥有DBA权限的用户是系统中的超级用户,可以创建新的用户、创建模式、创建基本表和视图等;DBA拥有对所有数据库对象的存取权限,还可以把这些权限授予一般用户.1。2数据库角色数据库角色是被命名的一组与数据库操作相关的权限,角色是权限的集合。可以为一组具有相同权限的用户创建一个角色,使用角色来管理数据库权限或以简化授权过程.(1)角色的创建CREATEROLE〈角色名>(2)给角色授权GRANT<权限〉[,<权限〉]…ON<对象类型〉对象名TO<角色〉[,<角色>]…(3)将一个角色授予其他的角色或用户GRANT<角色1〉[,<角色2〉]…TO<角色3〉[,〈用户1>]…[WITHADMINOPTION]//可以传播权限(4)角色权限的收回REVOKE<权限〉[,<权限>]…ON<对象类型><对象名>FROM<角色>[,<角色>]…(5)例:(p143)2强制存取控制(MAC)方法(1)自主存取控制的缺点自主存取控制是通过授权机制有效地控制对敏感数据的存取。由于用户对数据的存取权限是

温馨提示

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

评论

0/150

提交评论