数据库课件-第四章

PPT
  • 阅读 90 次
  • 下载 0 次
  • 页数 81 页
  • 大小 388.012 KB
  • 2022-12-05 上传
  • 收藏
  • 违规举报
  • © 版权认领
下载文档30.00 元 加入VIP免费下载
此文档由【小橙橙】提供上传,收益归文档提供者,本网站只提供存储服务。若此文档侵犯了您的版权,欢迎进行违规举报版权认领
数据库课件-第四章
可在后台配置第一页与第二页中间广告代码
数据库课件-第四章
可在后台配置第二页与第三页中间广告代码
数据库课件-第四章
可在后台配置第三页与第四页中间广告代码
数据库课件-第四章
数据库课件-第四章
还剩10页未读,继续阅读
【这是免费文档,您可以免费阅读】
/ 81
  • 收藏
  • 违规举报
  • © 版权认领
下载文档30.00 元 加入VIP免费下载
文本内容

【文档说明】数据库课件-第四章.ppt,共(81)页,388.012 KB,由小橙橙上传

转载请保留链接:https://www.ichengzhen.cn/view-92450.html

以下为本文档部分文字说明:

第4章数据库安全性4.1计算机安全性概述4.2数据库安全性控制4.3视图机制4.4审计4.5数据加密4.6统计数据库安全性4.7小结第4章数据库安全性4.1计算机安全性概述4.2数据库安全性控制4.3视图机制4

.4审计4.5数据加密4.6统计数据库安全性4.7小结4.1计算机安全性概述问题的提出–数据库的一大特点是数据可以共享–但数据共享必然带来数据库的安全性问题–数据库系统中的数据共享不能是无条件的共享例:军事秘密、国家机密、新产品实验数据、市场需

求分析、市场营销策略、销售计划、客户档案、医疗档案、银行储蓄数据计算机安全性概述(续)–数据库中数据的共享是在DBMS统一的严格的控制之下的共享,即只允许有合法使用权限的用户访问允许他存取的数据–数据库的安全性是指保护数据库,防止因用户非法使用

数据库造成数据泄露、更改或破坏。–数据库系统的安全保护措施是否有效是数据库系统主要的性能指标之一4.1计算机安全性概述4.1.1计算机系统的三类安全性问题4.1.2安全标准简介4.1计算机安全性概述4.1.1计算机系统的三类安全性问题4.1.2安全标准简介4

.1.1计算机系统的三类安全性问题计算机系统安全性是指计算机系统建立和采取的各种安全保护措施,以保护计算机系统中的硬件、软件及数据,防止其因偶然或恶意的原因使系统遭到破坏、更改或泄露等。技术安全是指计算机系统中采用具有一定安全性的硬件、软件来实现对计算机系统及其所存数据的安全保护,当计

算机系统受到无意或恶意的攻击时仍能保证系统正常运行,保证系统内的数据不增加、不丢失、不泄露。4.1.1计算机系统的三类安全性问题管理安全是指由于管理不善导致的计算机设备和数据介质的物理破坏、丢失等软硬件意外故障以及场地的意外事故等安全问题。

政策法律是指政府部门建立的有关计算机犯罪、数据安全保密的法律道德准则和政策法规、法令。4.1计算机安全性概述4.1.1计算机系统的三类安全性问题4.1.2安全标准简介4.1.2安全标准简介计算机以及信息安全技术方面有一

系列的安全标准,最有影响的当推TCSEC和CC这两个标准。TCSEC是指1985年美国国防部正式颁布的《DoD可信计算机系统评估准则》CC是在TCSEC的各评估准则及具体实践基础上,通过相互总结和互补发展而来的

TCSEC/TDI又称桔皮书,1991年4月美国NCSC颁布了TDI,将TCSEC扩展到数据库管理系统,定义了数据库管理系统的设计与实现中需满足和用以进行安全性级别评估的标准。TCSEC/TDI从四个方面来描述安全性级别划分的指标:安全策略、责任、保

证和文档。TCSEC/TDI(续)TCSEC/TDI将系统划分为四组七个等级,依次是D、C(C1,C2)、B(B1,B2,B3)、A(A1),按系统可靠或可信程度逐渐增高。安全级别定义A1B3B2B1C2C1D验证设计(Verifie

dDesign)安全域(SecurityDomains)结构化保护(StructuralProtection)标记安全保护(LabeledSecurityProtection)受控的存取保护(Contr

olledAccessProtection)自主安全保护(DiscretionarySecurityProtection)最小保护(MinimalProtection)CC提出了目前国际上公认的表述信息技术安全性的结构,即把对信息产品的安全要求分为安全

功能要求和安全保证要求。安全功能要求用以规范产品和系统的安全行为安全保证要求解决如何正确有效地实施这些功能安全功能要求和安全保证要求都以“类-子类-组件”的结构表述,组件是安全要求的最小构件块。CC(续)CC的文本由三部分组成,三个部分相互依存,缺一不可。–第一部分是“简

介和一般模型”,介绍CC中的有关术语、基本概念和一般模型以及与评估有关的一些框架。–第二部分是安全功能要求,列出了一系列功能组件、子类和类–第三部分是安全保证要求,列出了一系列保证组件、子类和类第4章数据库安全性4.1计算机安全性概述4.

2数据库安全性控制4.3视图机制4.4审计4.5数据加密4.6统计数据库安全性4.7小结数据库安全性控制(续)应用DBMSOSDB低高安全性控制层次方法:用户标识和鉴定存取控制审计视图操作系统安全保护密码存储计算机系统中的安全模型数据库安全性控制(

续)数据库安全性控制的常用方法–用户标识和鉴定–存取控制–视图–审计–密码存储数据库安全性控制(续)4.2.1用户标识与鉴别4.2.2存取控制4.2.3自主存取控制方法4.2.4授权与回收4.2.

5数据库角色4.2.6强制存取控制方法数据库安全性控制(续)4.2.1用户标识与鉴别4.2.2存取控制4.2.3自主存取控制方法4.2.4授权与回收4.2.5数据库角色4.2.6强制存取控制方

法4.2.1用户标识与鉴定用户标识与鉴别(Identification&Authentication)–系统提供的最外层安全保护措施用户标识与鉴定(续)基本方法–系统提供一定的方式让用户标识自己的名字或身份;–系统内

部记录着所有合法用户的标识;–每次用户要求进入系统时,由系统核对用户提供的身份标识;–通过鉴定后才提供机器使用权。–用户标识和鉴定可以重复多次用户标识与鉴定(续)让用户标识自己的名字或身份的方法–用

户名/口令•简单易行,容易被人窃取–每个用户预先约定好一个计算过程或者函数•系统提供一个随机数•用户根据自己预先约定的计算过程或者函数进行计算•系统根据用户计算结果是否正确鉴定用户身份数据库安全性控制(续)4.2.1用户标识与鉴别4.2.2存取控制4.2.3自主存取控制方法4.2.4授权

与回收4.2.5数据库角色4.2.6强制存取控制方法4.2.2存取控制存取控制机制的功能–存取控制机制的组成•定义存取权限•检查存取权限用户权限定义和合法权检查机制一起组成了DBMS的安全子系统存取控制(续)–

定义存取权限•在数据库系统中,为了保证用户只能访问他有权存取的数据,必须预先对每个用户定义存取权限。–检查存取权限•对于通过鉴定获得上机权的用户(即合法用户),系统根据他的存取权限定义对他的各种操作请求进行控制,确保他只执行合法操作。存取控制(续)自主存取控

制:用户对不同的数据库对象有不同的存取权限,不同的用户对同一对象也有不同的权限,而且用户还可将其拥有的存取权限转授给其他用户。强制存取控制:每一个数据库对象被标以一定的密级,每一个用户也被授予某一个级别的许可证,对于任意一个对象,只有具有合法许可证的用户才

可以存取。数据库安全性控制(续)4.2.1用户标识与鉴别4.2.2存取控制4.2.3自主存取控制方法4.2.4授权与回收4.2.5数据库角色4.2.6强制存取控制方法4.2.3自主存取控制

(MAC)方法定义存取权限–存取权限•存取权限由两个要素组成–数据对象–操作类型自主存取控制(MAC)方法(续)–定义存取权限•定义一个用户可以在哪些数据对象上进行哪些类型的操作•在数据库系统中,定义存取权限称为授权(Authorization)•授权定义经过编译后存放在数据字典中自主存取

控制(MAC)方法(续)–关系系统中的存取权限•类型关系数据库系统中的存取权限对象类型对象操作类型数据库模式基本表CREATESCHEMACREATETABLE,ALTERTABLE模式视图索引CREATEV

IEWCREATEINDEX数据基本表和视图SELECT,INSERT,UPDATE,DELETE,REFERENCES,ALLPRIVILEGES数据属性列SELECT,INSERT,UPDATE,REFERENCES,ALLPRIVILEGES自主存取控制(MA

C)方法(续)–关系系统中的存取权限(续)•定义方法–GRANT/REVOKE数据库安全性控制(续)4.2.1用户标识与鉴别4.2.2存取控制4.2.3自主存取控制方法4.2.4授权与回收4.2.5数据库角色4.2.6强制存取控制方法4.2.4授权与回收GRANT语句向用户授

予权限,REVOKE语句收回授予的权限。用户对某类数据库对象具有何种操作权力是个政策问题而不是技术问题。数据库管理系统的功能是保证这些决定的执行。1.GRANT一般格式:GRANT<权限>[,<权限>]…ON<对象类型><对象名>[,<对象类型

><对象名>]…TO<用户>[,<用户>]…[WITHGRANTOPTION];发出GRANT语句的可以是DBA,也可以是该数据库对象创建者,也可以是已经拥有该权限的用户。接受权限的用户可以是一个或多个具体用户,也可以是PUBLIC,即全体用户。GRANT

(续)若指定了WITHGRANTOPTION子句,则获得某种权限的用户还可以把这种权限再授予其他的用户;若没有指定此子句,则获得某种权限的用户只能使用该权限,不能传播该权限。SQL标准允许具有WITHGRANTOPTION的用户把相应权限或其子集传递

授予其他用户,但不允许循环授权,即被授权者不能把权限再授回给授权者或者其祖先。GRANT(续)例1把查询Student表的权限授给用户U1GRANTSELECTONTABLEStudentTOU1;例2把对Student表和Course表的全部操作权

限授予用户U2和U3GRANTALLPRIVILEGESONTABLEStudent,CourseTOU2,U3;例3把对表SC的查询权限授予所有用户GRANTSELECTONTABLESCTOPUBLIC;GRANT(续)例5把对表SC的INSERT权限授予U5用户,并允许将此

权限再授予其他用户GRANTINSERTONTABLESCTOU5WITHGRANTOPTION;此语句执行后,U5不仅拥有了对表SC的INSERT权限,还可以传播此权限,他可以将此权限授予U6GRANTINSERTONTABLESCTOU6WITHG

RANTOPTION;2.REVOKE授予的权限可以由DBA或其他授权者用REVOKE语句收回,REVOKE语句的一般格式为:REVOKE<权限>[,<权限>]…ON<对象类型><对象名>[,<对象类型><对象名>]…FROM<用户>[,<用户>]…[CASCADE

︱RESTRICT];CASCADE:将用户及其传播的权限级联收回RESTRICT:若此用户将权限传播给别的用户则拒绝执行。缺省值为RESTRICT,有的DBMS缺省值为CASCADE。REVOKE(续)例8把用户U4修改学生学号的权限收回REVOKEUPDATE(Sno)ONTABLESt

udentFROMU4;例9收回所有用户对表SC的查询权限REVOKESELECTONTABLESCFROMPUBLIC;例10把用户U5对SC表的INSERT权限收回REVOKEINSERTONTABLESCFROMU5CASCADE;REVOKE(续)DBA拥有对数据库中所有对

象的所有权限,并可以根据实际情况将不同的权限授予不同的用户用户对自己建立的基本表和视图拥有全部的操作权限,并且可以用GRANT语句把其中某些权限授予其他用户。所有授予出去的权为在必要时又都可以用REVOKE

语句收回用户可以“自主”地决定将数据的权限授予何人、决定是否也将“授权”的权限授予别人。这样的存取控制是自主存取控制3.创建数据库模式的权限对数据库模式的授权由DBA在创建用户时实现创建用户语句一般格式如下:CREATEUSER

<username>[WITH][DBA︱RESOURCE︱CONNECT];创建数据库模式的权限(续)只有系统的超级用户才有权创建一个新的数据库用户新创建的数据库用户有三种权限:CONNECT、RESOURCE和DBA命令中若没有指定创建的新用户的权限,默认该用户拥有CONNECT权限

。拥有CONNECT权限的用户不能创建新用户,不能创建模式,也不能创建基本表,只能登录数据库。拥有RESOURCE权限的用户能创建基本表和视图,成为所创建对象的属主,但不能创建模式,不能创建新的用户。拥有DBA权限的用户是

系统中的超级用户,可以创建新的用户、创建模式、创建基本表和视图等;拥有对所有数据库对象的存取权限,还可以把这些权限授予一般用户。数据库安全性控制(续)4.2.1用户标识与鉴别4.2.2存取控制4.2.3自主存取控制方法4.2.4授权与回收4.2

.5数据库角色4.2.6强制存取控制方法4.2.5数据库角色数据库角色是被命名的一组与数据库操作相关的权限,角色是权限的集合。可以为一组具有相同权限的用户创建一个角色,使用角色来管理数据库权限可以简化授权的过程在SQL中首先用CREATEROLE语句创建角色,

然后用GRANT语句给角色授权1.角色的创建创建角色的SQL语句格式是CREATEROLE<角色名>;刚刚创建的角色是空的,没有任何内容,可以用GRANT为角色授权2.给角色授权GRANT<权限>[,<权限>]…ON<对象类型><对象名>TO<角色>[,<角色>]…DBA和用户可以利用

GRANT语句将权限授予某一个或几个角色3.将一个角色授予其他的角色或用户GRANT<角色1>[,<角色2>]…TO<角色3>[,<用户1>]…[WITHADMINOPTION];授予者或者是角色的创建者,或者拥有在

这个角色上的ADMINOPTION。若指定了WITHADMINOPTION子句,则获得某种权限的角色或用户还可以将权限再授予其他角色一个角色的权限包括直接授予这个角色的全部权限加上其他角色授予这个角色的全部

权限4.角色权限的收回REVOKE<权限>[,<权限>]…ON<对象类型><对象名>FROM<角色>[,<角色>]…用户可以回收角色的权限,从而修改角色拥有的权限REVOKE动作的执行者或者是角色的创建者,或者拥有在这个(些

)角色上的ADMINOPTION例题例11通过角色来实现将一组权限授予一个用户。步骤如下:1.首先创建一个角色R1CREATEROLER1;2.然后使用GRANT语句,使角色R1拥有Student表的SELECT、UPDATE、INSERT权限G

RANTSELECT,UPDATE,INSERTONTABLEStudentTOR1;3.将角色授予王平、张明、赵玲GRANTR1TO王平、张明、赵玲;4.也可以一次性的通过角色R1来回收王平的这3个权限REVOKER1FROM王平

;例题例12角色的权限修改GRANTDELETEONTABLEStudentTOR1;使角色R1在原来的基础上增加了对表Student的DELETE权限例13REVOKESELECTONTABLESt

udentFROMR1;使R1减少了SELECT权限数据库安全性控制(续)4.2.1用户标识与鉴别4.2.2存取控制4.2.3自主存取控制方法4.2.4授权与回收4.2.5数据库角色4.2.6强制存取控制方法4.2.6强制存取控制(MAC)方法MAC

是指系统为保证更高程度的安全性,按照TDI/TSCEC标准中安全策略的要求,所采取的强制存取检查手段。不是用户能直接感知或进行控制的适用于那些对数据有严格而固定密级分类的部门,如军事部门或政府部门强制存取控制方法(续)在MAC中,DBMS所管理的全部实体被

分为主体和客体两大类主体是系统中的活动实体,既包括DBMS所管理的实际用户,也包括代表用户的各进程客体是系统中的被动实体,是受主体操纵的,包括文体、基本表、索引、视图等。对于主体和客体,DBMS为它们每个实例(值)指派一个敏感度标记强制存取控制方法(续

)敏感度标记被分成若干级别,例如绝密、机密、可信、公开等。主体的敏感度标记称为许可证级别,客体的敏感度标记称为密级MAC机制就是通过对比主体的Label和客体的Label,最终确定主体是否能够存取客体强制存取控制方法(续)当某一用户(或某一主体

)以标记label注册入系统时,系统要求他对任何客体的存取必须遵循如下规则:(1)仅当主体的许可证级别大于或等于客体的密级时,该主体才能读取相应的客体(2)仅当主体的许可证级别等于客体的密级时,该主体才能写相应的客体在某些系统中,第(2)条规则有些不同,它们规定:仅当主体的许可证级别小于或等

于客体的密级时,该主体才能写相应的客体。强制存取控制方法(续)强制存取控制是对数据本身进行密级标记,无论数据如何复制,标记与数据是一个不可分的整体,只有符合密级标记要求的用户才能操纵数据,从而提供了更高级别的安全性。强制存取控

制方法(续)较高安全性级别提供的安全保护要包含较低级别的所有保护,因此在实现MAC时要首先实现DAC,即DAC与MAC共同构成DBMS的安全机制。系统首先进行DAC检查,对通过DAC检查的允许存取的数据库

对象再由系统自动进行MAC检查,只有通过MAC检查的数据库对象方可存取。第4章数据库安全性4.1计算机安全性概述4.2数据库安全性控制4.3视图机制4.4审计4.5数据加密4.6统计数据库安全性4.7小结4.3视图机制视图机制把要保密的数据对

无权存取这些数据的用户隐藏起来,从而自动地对数据提供一定程度的安全保护。视图机制更主要的功能在于提供数据独立性,其安全保护功能太不精细,往往远不能达到应用系统的要求。视图机制(续)视图机制间接地实现支持存取谓词的用户权限定义视图机制(续)例:建立计算机系学生的视图,把对该

视图的SELECT权限授予王平,把该视图上的所有操作权限授予张明先建立计算机系学生的视图CS_StudentCREATEVIEWCS_StudentASSELECT*FROMStudentWHERESde

pt='CS';视图机制(续)在视图上进一步定义存取权限GRANTSELECTONCS_StudentTO王平;GRANTALLPRIVILIGESONCS_StudentTO张明;第4章数据库安全性4.1计算机安全性概述4.2数据库安全性控制4.3视图机制4.4审计4.5数据加密

4.6统计数据库安全性4.7小结4.4审计(Audit)什么是审计–审计功能启用一个专用的审计日志(AuditLog),系统自动将用户对数据库的所有操作记录在上面–DBA可以利用审计日志中的追踪信息,重现导致数据库现有

状况的一系列事件,以找出非法存取数据的人–C2以上安全级别的DBMS必须具有审计功能审计(续)审计功能的可选性–审计很费时间和空间,所以DBMS往往都将其作为可选特征•DBA可以根据应用对安全性的要求,灵活地打开或关闭审计功能。

审计(续)审计一般可以分为用户级审计和系统级审计用户级审计是任何用户可设置的审计,主要是用户针对自己创建的数据库表或视图进行审计,记录所有用户对这些表或视图的一切成功和(或)不成功的访问要求以及各种类型的SQL操作

系统级审计只能由DBA设置,用以监测成功或失败的登录要求、监测GRANT和REVOKE操作以及其他数据库级权限下的操作审计(续)–用户识别和鉴定、存取控制、视图等安全性措施均为强制性机制,将用户操作限制在

规定的安全范围内。审计技术是预防手段,监测可能的不合法行为。–审计设置以及审计内容一般都存放在数据字典中。必须把审计开关打开(即把系统参数audit_trail设为true),才可以在系统表SYS_AUDITTR

AIL中查看审计信息审计(续)–由于任何系统的安全性措施都不可能是完美无缺的,蓄意盗窃、破坏数据的人总是想方设法打破控制。所以,当数据相当敏感,或者对数据的处理极为重要时,就必须使用审计技术。审计(续)AUDI

T语句用来设置审计功能,NOAUDIT语句取消审计功能例15对修改SC表结构或修改SC表数据的操作进行审计AUDITALTER,UPDATEONSC;例16取消对SC表的一切审计NOAUDITALTER,UPDATEONSC;第4章数据库安全性4.1计算机

安全性概述4.2数据库安全性控制4.3视图机制4.4审计4.5数据加密4.6统计数据库安全性4.7小结4.5数据加密数据加密–防止数据库中数据在存储和传输中失密的有效手段加密的基本思想–根据一定的算法将原始数据(术语为明文,Plaintext)变

换为不可直接识别的格式(术语为密文,Ciphertext)–不知道解密算法的人无法获知数据的内容数据加密(续)加密方法–替换方法•使用密钥(EncryptionKey)将明文中的每一个字符转换为密文中的一

个字符–置换方法•将明文的字符按不同的顺序重新排列–这两种方法结合能提供相当高的安全程度例:美国1977年制定的官方加密标准:数据加密标准(DataEncryptionStandard,简称DES)数据加密(续)DBMS中的数据加密–有些数据库

产品提供了数据加密例行程序–有些数据库产品本身未提供加密程序,但提供了接口数据加密(续)数据加密功能通常也作为可选特征,允许用户自由选择–数据加密与解密是比较费时的操作–数据加密与解密程序会占用大量系统资源–应该只对高度机密的数据加密第4章数据库安全性4.1计算机安全性概述4.2数

据库安全性控制4.3视图机制4.4审计4.5数据加密4.6统计数据库安全性4.7小结4.6统计数据库安全性统计数据库允许用户查询聚集类型的信息,但是不允许查询单个记录信息。例如,查询“程序员的平均工资是多少?”是合法的,但是查询“程序员张勇的工资是多少?”

就不允许统计数据库安全性(续)在统计数据库中存在着特殊的安全性问题,即可能存在着隐藏的信息通道,使得可以从合法的查询中推导出不合法的信息。例如下面两个查询都是合法的:-本公司共有多少女高级程序员?-本公司女

高级程序员的工资总额是多少?若第一个查询的结果为“1”,那么第二个查询的结果显然就是这个程序员的工资数。这样统计数据库的安全性机制就失效了。统计数据库安全性(续)为了解决以上问题,可以规定任何查询至少要涉及N个以上的记录。但还是存在另外的

泄密途径。某个用户A想知道另一用户B的工资数额,他可以通过下列两个合法查询获取:-用户A和其他N个程序员的工资总额是多少?-用户B和其他N个程序员的工资总额是多少?若第一个查询的结果是X,第二个查询的结果是Y,由于用

户A知道自己的工资是Z,则B的工资为Y-(X-Z)统计数据库安全性(续)上述例子泄密的关键之处在于两个查询之间有很多重复的数据项,因此可以再规定任意两个查询的相交数据项不能超过M个,这样就使得获取他人的数据更加困难了第4章数据库安全性4.1计算机安全性概述4.

2数据库安全性控制4.3视图机制4.4审计4.5数据加密4.6统计数据库安全性4.7小结4.7小结DBMS是管理数据的核心,其自身必须具有一整套完整而有效的安全性机制。计算机以及信息安全技术方面有一系列的安全标准,最

有影响的当推TCSEC和CC这两个标准。目前CC已经基本上取代了TCSEC,成为评估信息产品安全性的主要标准。实现数据库系统安全性的技术和方法有多种,最重要的是存取控制技术、视图技术和审计技术。

小橙橙
小橙橙
文档分享,欢迎浏览!
  • 文档 25747
  • 被下载 7
  • 被收藏 0
相关资源
广告代码123
若发现您的权益受到侵害,请立即联系客服,我们会尽快为您处理。侵权客服QQ:395972555 (支持时间:9:00-21:00) 公众号
Powered by 太赞文库
×
确认删除?