资源描述
第九章 数据库安全性数据库安全性数据库安全性是指保护数据库以预防不合法使用所造成数据泄露、更改或破坏.数据库安全性数据库安全性和计算机系统安全性计算机系统安全性,包括操作系统、网络系统安全性是紧密联系、互相支持.911 计算机系统三类安全性问题 所谓计算机系统安全性计算机系统安全性,是指为计算机系统建立和采用各种安全保护办法,以保护计算机系统中硬件、软件及数据,预防因偶然或歹意原因使系统遭到破坏,数据遭到更改或泄露等。第1页第1页计算机安全涉及计算机安全涉及:计算机系统本身技术问题、管理问题,法学、犯罪学、心理学问题其内容涉及其内容涉及:计算机安全理论与策略、计算机安全技术、安全管理、安全评价、安全产品以及计算机犯罪与侦察、计算机安全法律、安全监察等。计算机系统安全性问题可分为三大类计算机系统安全性问题可分为三大类:技术安全类、管理安全类、政策法律类第2页第2页912 可信计算机系统评测原则1985年美国国防部(DoD)正式颁布DoD可信计算机系统评估原则(Trusted Computer System Evaluation Criteria,简称TCSEC或DOD85)。TCSEC又称桔皮书桔皮书;制定这个原则目的主要有:制定这个原则目的主要有:(1)提供各种原则,使用户能够对其计算机系统内敏感信息安全操作可信程度做评估。(2)给计算机行业制造商提供一个可循指导规则,使其产品能够更加好地满足敏感应用安全需求。第3页第3页1991年4月美国NCSC(国家计算机安全中心)颁布了可信计算机系统评估原则关于可信数据库系统解释(Trusted Database Interpretation,简称TDI,即紫皮书),将TCSEC扩展到数据库管理系统。TDI中定义了数据库管理系统设计与实现中需满足和用以进行安全性级别评估原则。四个方面来描述安全性级别划分指标:四个方面来描述安全性级别划分指标:安全策略、责任、确保、文档。第4页第4页第5页第5页第6页第6页第7页第7页第8页第8页TCSEC(TDl)将系统划分为四组(division)七个等级,依次是D;C(C1,C2);B(BI,B2,B3);A(A1),按系统可靠或可信程度逐步增高,第9页第9页第10页第10页D级级 D级是最低档别。保留D级目的是为了将一切不符合更高原则系统,统统归于D组。如DOS就是操作系统中安全原则为D典型例子。它含有操作系统基本功效,如文献系统,进程调度等,但在安全性方面几乎没有什么专门机制来保障第11页第11页C1级级 只提供了非常初级自主安全保护。能够实现对用户和数据分离,进行自主存取控制(DAC),保护或限制用户权限传播。既有商业系统往往稍作改进即可满足要求。第12页第12页C2级级 实际是安全产品最低档次,提供受控存取保护,即将C1级DAC进一步细化,以个人身份注册负责,并实行审计和资源隔离。诸多商业产品已得到该级别认证。达到C2级产品在其名称中往往不突出“安全”这一特色,如:操作系统中MicrosoftWindowsNT 35,数字设备公司 OpenVMSVAX60和61。数据库产品有Oracle公司racle7,Sybase公司SQLServer606等。第13页第13页 BI级级 标识安全保护。对系统数据加以标识,并对标识主体主体和客体客体实行强制存取控制(MAC)以及审计等安全机制。B1级能够较好地满足大型公司或普通政府部门对于数据安全需求,这一级别产品才认为是真正意义上安全产品。满足此级别产品前普通多冠以“安全”(Securiy)或“可信”(Trusted)字样,作为区别于普通产品安全产品发售。比如,操作系统方面,典型有数字设备公司SEVMS VAXVersion 60,惠普公司HP-UXBLSrelease 909+。第14页第14页数据库方面则有Oracle公司Trusted Oracle 7,Sybase公司Secure SQL Server version 1106,Informix公司Incorporated INFORMIX-OnLin6Secure50等第15页第15页B2级级 结构化保护。建立形式化安全策略模型并对系统内所有主体和客体实行DAC和MAC。通过认证、B2级以上安全系统非常稀少。比如,符合B2原则操作系统只有Trusted lnformation Systems公司 Trusted XENIX一个产品,符合B2原则网络产品只有Cryptek Secure Communications公司LLC VSLAN一个产品,而数据库方面则没有符合B2第16页第16页B3级级 安全域。该级TCB必须满足访问监控器要求,审计跟踪能力更强,并提供系统恢复过程。,A1级级 验证设计,即提供B3级保护同时给出系统形式化设计阐明和验证以确信各安全保护真正实现。第17页第17页第18页第18页B2级以上系统原则更多地还处于理论研究阶段支持自主存取控制DBMS大体属于C级,而支持强制存取控制DBMS则能够达到B1级。第19页第19页92数据库安全性控制在普通计算机系统中,安全办法是一级一级层层设置。比如能够有下列模型:第20页第20页921 用户标识与判别(Identification&Authentication)用户标识和判别用户标识和判别是系统提供最外层安全保护办法。其办法是由系统提供一定方式让用户标识自己名字或身份。每次用户要求进入系统时,由系统进行核对,通过鉴定后才提供机器使用权。惯用办法有:用一个用户名或者用户标识号来标明用户身份。口令口令(Password)为了进一步核实用户,系统经常要求用户输入口令。为保密起见,用户在终端上输入口令不显示在屏幕上。系统核对口令以判别用户身份。第21页第21页922 存取控制 一、存取控制机制主要包含两部分:1定义用户权限,并将用户权限登记到数据字典中。用户权限是指不同用户对于不同数据对象允许执行操作权限。系统必须提供适当语言定义用户权限,这些定义经过编译后存放在数据字典中,被称作安全规则或授权规则。第22页第22页 2合法权限检查每当用户发出存取数据库操作请求后(请求普通应包括操作类型、操作对象和操作用户等信息),DBMS查找数据字典,依据安全规则进行合法权限检查,若用户操作请求超出了定义权限,系统将回绝执行此操作。用户权限定义和合法权限检查机制一起构成了DBMS安全子系统。第23页第23页二、自主存取控制(DAC)强制存取控制(MAC)(1)在自主存取控制方法中,用户对于不同数据对象有不同存取权限,不同用户对同一对象也有不同权限,而且用户还可将其拥有存取权限转授给其它用户。因此自主存取控制非常灵活。(2)在强制存取控制方法中,每一个数据对象被标以一定密级,每一个用户也被授予某一个级别许可证。对于任意一个对象,只有含有合法许可证用户才干够存取。强制存取控制因此相对比较严格第24页第24页923 自主存取控制(DAC)办法大型数据库管理系统几乎都支持自主存取控制.当前SQL原则也对自主存取控制提供支持,这主要通过SQLGRANT语句和REVOKE语句来实现。用户权限是由两个要素构成:数据对象和操作类型。第25页第25页第26页第26页第27页第27页用户权限定义中数据对象范围越小授权子系统就越灵活。授权粒度越细,授权子系统就越灵活,但系统定义与检查权限开销也会相应地增大 授权定义是独立于数据值,即用户能否对某类数据对象执行操作与数据值无关,完全由数据名决定。如用户王平能检索关系Student,无论学生是哪个系。若授权依赖于数据对象内容,则称为是与数据值相关授权。比如,用户王平只能检索计算机系学生信息第28页第28页第29页第29页自主存取控制能够通过授权机制有效地控制其它用户对敏感数据存取。但是由于用户对数据存取权限是“自主”,用户能够自由地决定将数据存取权限授予何人、决定是否也将“授权”权限授予别人,而系统对此无法控制。这种机制仅仅通过对数据存取权限来进行安全控制,而数据本身并无安全性标识。第30页第30页924 强制存取控制(MAC)办法1、所谓、所谓MAC是指系统为确保更高程度安全性,按照TDITCSEC原则中安全策略要求,所采用强制存取检查手段。它不是用户能直接感知或进行控制。MAC适合用于那些对数据有严格而固定密级分类部门,比如军事部门或政府部门。2、在MAC中,DBMS所管理所有实体被分为主体和客体两大类。主体是系统中活动实体,既包括DBMS所管理实际用户,也包括代表用户各进程。客体是客体是系统中被动实体,是受主体操纵,包括文献、基表、索引、视图等。对于主体和客体,DBMS为它们每个实例(值)指派一个敏感敏感度标识度标识(Label)。第31页第31页敏感度标识被分成若干级别,比如绝密(TopSecret)、机密(Secret)、可信(Confidential)、公开(Public)等。主体敏感度标识称为许可证级别许可证级别(ClearanceLevel);客体敏感度标识称为密级密级(ClassificationLevel)。MAC机制就是通过对比主体对比主体Label和客体和客体Label,最后拟定主体是否能够存取客体。第32页第32页当某一用户用户(或某一主体或某一主体)以标识label注册入系统时,系统要求他对任何客体存取必须遵循下列规则:规则:(1)仅当主体许可证级别不小于或等于客体密级时,该主体才干读取相应客体;(2)仅当主体许可证级别等于等于客体密级时,该主体才干写写相应客体.严禁了拥有高许可证级别主体更新低密级数据对象,从而预防了敏感数据泄漏。第33页第33页强制存取控制强制存取控制(MAC)是对数据本身进行密级标识,无论数据如何复制,标识与数据是一个不可分整体,只有符合密级标识要求用户才干够操纵数据,从而提供了更高级别安全性。在实现MAC时要首先实现DAC第34页第34页925 视图机制通过视图机制把要保密数据对无权存取用户隐藏起来,从而自动地对数据提供一定程度安全保护。第35页第35页第36页第36页926 审计(Audit)审计功效把用户对数据库所有操作自动统计下来放入审计日记(Audit Log)中。DBA能够利用审计跟踪信息,重现造成数据库既有情况一系列事件,找出非法存取数据人、时间和内容等。审计通常是很费时间和空间,因此DBMS往往都将其作为可选特性,允许DBA依据应用对安全性要求,灵活地打开或关闭审计功效。审计功效普通主要用于安全性要求较高部门。第37页第37页927 数据加密1.数据加密是预防数据库中数据在存放和传输中失密有效手段。2.加密基本思想是依据一定算法将原始数据(术语为明文,Plain text)变换为不可直接识别格式(术语为密文,Cipher text),从而使得不知道解密算法人无法获知数据内容。3.加密方法主要有两种:(1)替换方法,该方法使用密钥(EncryptionKey)将明文中每一个字符转换为密文中一个字符。(2)置换方法,该方法仅将明文字符按不同次序重新排列。4.单独使用这两种方法任意一个都是不够安全。不过将这两种方法结合起来就能提供相称高安全程度。采取这种结合算法例子是美国1977年制订官方加密标准,数据加密标准(Data Encryption Standard,简称DES)。第38页第38页数据库产品提供了数据加密例行程序,可依据用户要求自动对存储和传播数据进行加密处理。另一些数据库产品提供了接口,允许用户用其它厂商加密程序对数据加密。由于数据加密与解密也是比较费时操作,并且数据加密与解密程序会占用大量系统资源大量系统资源第39页第39页93 统计数据库安全性在统计数据库中存在着特殊安全性问题,即也许存在着隐蔽信息通道,使得能够从合法查询中推导推导出不合法信息第40页第40页第41页第41页第42页第42页94、:Oracle数据库安全性办法Oracle安全办法主要有三个方面:一是用户标识和鉴定;二是授权和检查机制;三是审计技术(是否使用审计技术可由用户灵活选择);除此之外,Oracle还允许用户通过触发器灵活定义自己安全性办法。第43页第43页一、用户标识和鉴定一、用户标识和鉴定 在Oracle中,最外层安全性办法是让用户标识自己名字,然后由系统进行核实。Oracle允许用户重复标识三次,假如三次未通过,系统自动退出第44页第44页二、授权与检查机制二、授权与检查机制Oracle权限包括系统权限和数据库对象权限两类;采用非集中授权机制,即DBA负责授予与回收系统权限,每个用户授予与回收自己创建数据库对象权限。Oracle允许重复授权,即可将某一权限多次授予同一用户,系统不会犯错。Oracle也允许无效回收,即用户没有某种权限,但回收此权限操作仍算成功。第45页第45页 1系统权限系统权限Oracle提供了80各种系统权限,如创建会话、创建表、创建视图、创建用户等。DBA在创建一个用户时需要将其中一些权限授予该用户。所谓角色所谓角色就是一组系统权限集合,目的在于简化权限管理。Oracle除允许DBA定义角色外,还提供了预定义角色,如 CONNECT,RESOURCE和DBA。含有CONNECT角色角色用户能够登录数据库,执行数据查询和操纵。即能够执行ALTERTABLE,CREATEVIEW,CREATEINDEX,DROPTABLE,DROP VIEW,DROP INDEX,GRANT,REVOKE,INSERT,SELECT,UPDATE,DELETE,AUDIT,NOAUDIT等操作第46页第46页RESOURCE角色能够创建表,即执行CREATE TABLE操作。创建表用户将拥有对该表所有权限。DBA角色能够执行一些授权命令,创建表,对任何表数据进行操纵。它涵盖了前两种角色,另外还能够执行一些管理操作,DBA角色拥有最高级别权限。2数据库对象权限数据库对象权限第47页第47页(1)表级安全性 表创建者或DBA能够把表级权限授予其它用户 ALTER:修改表定义 DELETE:删除表统计 INDEX:在表上建索引 INSERT:向表中插入数据统计 SELECT:查找表中统计 UPDATE:修改表中数据 ALL:上述所有权限 表级授权使用GRANT和REVOKE语句致。第48页第48页(2)行级安全性Otacle行级安全性由视图实现。用视图定义表水平子集,限定用户在视图上操作,就为表行级提供了保护。(3)列级安全性 Oracle列级安全性能够由视图实现,也能够直接在基本表上定义。用视图定义表垂直子集就能够实现列级安全性,办法与上面类似。第49页第49页Oracle对数据库对象权限采用分散控制方式,允许含有WITH GRANTOPTION用户把相应权限或其子集传递授予其它用户,但不允许循环授权不允许循环授权第50页第50页三、Oracle审计技术 第51页第51页四、用户定义安全性办法第52页第52页
展开阅读全文