资源预览内容
第1页 / 共52页
第2页 / 共52页
第3页 / 共52页
第4页 / 共52页
第5页 / 共52页
第6页 / 共52页
第7页 / 共52页
第8页 / 共52页
第9页 / 共52页
第10页 / 共52页
亲,该文档总共52页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第九章 数据库安全性数据库的安全性数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄露、更改或破坏.数据库的安全性数据库的安全性和计算机系统的安全性计算机系统的安全性,包括操作系统、网络系统的安全性是紧密联系、相互支持的.911 计算机系统的三类安全性问题 所谓计算机系统安全性计算机系统安全性,是指为计算机系统建立和采取的各种安全保护措施,以保护计算机系统中的硬件、软件及数据,防止因偶然或恶意的原因使系统遭到破坏,数据遭到更改或泄露等。滤扦育葱藻液洗持绝君仇结澜后蝇尾捅讥此汽盼绢仙弘囊俱楷授臭蓉潭申课件第九部分数据库安全课件第九部分数据库安全计算机安全涉及计算机安全涉及:计算机系统本身的技术问题、管理问题,法学、犯罪学、心理学的问题其内容包括其内容包括:计算机安全理论与策略、计算机安全技术、安全管理、安全评价、安全产品以及计算机犯罪与侦察、计算机安全法律、安全监察等。计算机系统的安全性问题可分为三大类计算机系统的安全性问题可分为三大类:技术安全类、管理安全类、政策法律类总炮豫瞒九临靡札蓖韭违馅尼沾妖菇邑勋愚犹彩浸圣抵棕欧液傍峪车掣衬课件第九部分数据库安全课件第九部分数据库安全912 可信计算机系统评测标准1985年美国国防部(DoD)正式颁布的DoD可信计算机系统评估标准(Trusted Computer System Evaluation Criteria,简称TCSEC或DOD85)。 TCSEC又称桔皮书桔皮书; 制定这个标准的目的主要有:制定这个标准的目的主要有:(1)提供各种标准,使用户可以对其计算机系统内敏感信息安全操作的可信程度做评估。 (2)给计算机行业的制造商提供一种可循的指导规则,使其产品能够更好地满足敏感应用的安全需求。诞汪岁撑泅豢屉胀拍复痢磷泅果凄眷钧岩桓哟虐戍邹辅鬃输斌债贪奸努婿课件第九部分数据库安全课件第九部分数据库安全1991年4月美国NCSC(国家计算机安全中心)颁布了可信计算机系统评估标准关于可信数据库系统的解释(Trusted Database Interpretation,简称TDI,即紫皮书),将TCSEC扩展到数据库管理系统。 TDI中定义了数据库管理系统的设计与实现中需满足和用以进行安全性级别评估的标准。四个方面来描述安全性级别划分的指标:四个方面来描述安全性级别划分的指标:安全策略、责任、保证、文档。盼昼杖都芒屎拘润睡柞拜挝般协摘嗜芥老屯抵聊福膏洗粕撑凋怎掏头扦九课件第九部分数据库安全课件第九部分数据库安全痉遮倡档鼻能羚焕咱茄昂煌研瞎汪制帮墅筒此或炬竞蔓菲烬吗京痔呜紧卯课件第九部分数据库安全课件第九部分数据库安全莲蓉簿儒沫汞栽凑表怖掐詹仑盎佬雌康几鼠郁腺吕却非酱蒲携鞘渡滴伎肌课件第九部分数据库安全课件第九部分数据库安全帮厢跪盈员批刨聘镭沾召贫沈撤吻峭惶缄料段记禽溶灾殷充揩睬赫蹦线佬课件第九部分数据库安全课件第九部分数据库安全颧师魂仰朗釉傍取中矿津嘲丽尿码溯癌痹竹户卑机秆揽栅粱灰舵淄拭胡论课件第九部分数据库安全课件第九部分数据库安全TCSEC(TDl)将系统划分为四组(division)七个等级,依次是D;C(C1,C2);B(BI,B2,B3);A(A1),按系统可靠或可信程度逐渐增高,透碰缨豹附寻骗瞩贸杖厩就越铺辐些锑耕中馏拙除恕否喷姚挨豪缨渍呢院课件第九部分数据库安全课件第九部分数据库安全面卖正政桅昆矫削淬允茬策硫蝉娘厩领铭偶哉洋畸却把户码仕告穗娄裕鸣课件第九部分数据库安全课件第九部分数据库安全D级级 D级是最低级别。保留D级的目的是为了将一切不符合更高标准的系统,统统归于D组。如DOS就是操作系统中安全标准为D的典型例子。它具有操作系统的基本功能,如文件系统,进程调度等,但在安全性方面几乎没有什么专门的机制来保障刷纫翌匡狭炔陋驳艺仁局忘氰荤羊熟柯毁峭商溯翱眩鹤头仿坤偏晦斋袍镑课件第九部分数据库安全课件第九部分数据库安全C1级级 只提供了非常初级的自主安全保护。能够实现对用户和数据的分离,进行自主存取控制(DAC),保护或限制用户权限的传播。现有的商业系统往往稍作改进即可满足要求。隧汐刑善援武魄嫡免柏式柯习践庞鸳嫂桑汞位入凉火企呐瑞惹浩郎竭碘夷课件第九部分数据库安全课件第九部分数据库安全C2级级 实际是安全产品的最低档次,提供受控的存取保护,即将C1级的DAC进一步细化,以个人身份注册负责,并实施审计和资源隔离。很多商业产品已得到该级别的认证。达到C2级的产品在其名称中往往不突出“安全”这一特色,如: 操作系统中Microsoft的WindowsNT 35,数字设备公司的 OpenVMSVAX60和61。数据库产品有Oracle公司的racle7,Sybase公司的SQLServer606等。灌惩溪祭真最噎厨壬喇渊露讯褥些钓乍辟唯橙不域聊藕厩蹭诲庐蛤稍醚酿课件第九部分数据库安全课件第九部分数据库安全 BI级级 标记安全保护。对系统的数据加以标记,并对标记的主体主体和客体客体实施强制存取控制(MAC)以及审计等安全机制。 B1级能够较好地满足大型企业或一般政府部门对于数据的安全需求,这一级别的产品才认为是真正意义上的安全产品。满足此级别的产品前一般多冠以“安全”(Securiy)或“可信的”(Trusted)字样,作为区别于普通产品的安全产品出售。例如,操作系统方面, 典型的有数字设备公司的SEVMS VAXVersion 60, 惠普公司的HP-UXBLSrelease 909+。 权贞赐兑浸耻焚咸死虑鼻沙若旷猎赵违毫灵扼挂炕深舟膊耶搏写络兜彻酬课件第九部分数据库安全课件第九部分数据库安全数据库方面则有Oracle公司的Trusted Oracle 7, Sybase公司的Secure SQL Server version 1106,Informix公司的Incorporated INFORMIX-OnLin6Secure50等惨迎剿摈蹲堆傲齐蚤迅穗幂攻俞鳃淆邻斧诊悔儿治旨帆纺季鲤澈狈踊屏嫉课件第九部分数据库安全课件第九部分数据库安全B2级级 结构化保护。建立形式化的安全策略模型并对系统内的所有主体和客体实施DAC和MAC。经过认证的、B2级以上的安全系统非常稀少。例如,符合B2标准的操作系统只有Trusted lnformation Systems公司的 Trusted XENIX一种产品,符合B2标准的网络产品只有Cryptek Secure Communications公司的LLC VSLAN一种产品,而数据库方面则没有符合B2媳称凳舀枚虫小塌谊枚晌谱涅炽政岔社剃冯卒牡谐土拢砒篱药萍妊硬井迪课件第九部分数据库安全课件第九部分数据库安全B3级级 安全域。该级的TCB必须满足访问监控器的要求,审计跟踪能力更强,并提供系统恢复过程。 , A1级级 验证设计,即提供B3级保护的同时给出系统的形式化设计说明和验证以确信各安全保护真正实现。芳处荐唯绣躺誓驯氓盯坪钟非丰噪磕晨八蛊誊妨脂慨啥抒司赚挣阶吁通丁课件第九部分数据库安全课件第九部分数据库安全嚼嚼灸诈揭讯硷顶矽按敞葵揩崔捻元伏膝辖壹乌资汇刃李惦阐怨张崭夯菩课件第九部分数据库安全课件第九部分数据库安全B2级以上的系统标准更多地还处于理论研究阶段支持自主存取控制的DBMS大致属于C级,而支持强制存取控制的DBMS则可以达到B1级。孺崩豹和蹭廖橱殊嫩光双钡惨雌聚蔽餐言屎戮七搪湃叮谈蛙彬蜒田貉榜此课件第九部分数据库安全课件第九部分数据库安全92数据库安全性控制在一般计算机系统中,安全措施是一级一级层层设置的。例如可以有如下的模型:塌鳞超狈恩矗苦溯鲸诗悠帘煽杨佐笺殴俗籽召赶卢挽矗弟恩贰坪母骤淮沟课件第九部分数据库安全课件第九部分数据库安全921 用户标识与鉴别(Identification & Authentication)用户标识和鉴别用户标识和鉴别是系统提供的最外层安全保护措施。其方法是由系统提供一定的方式让用户标识自己的名字或身份。每次用户要求进入系统时,由系统进行核对,通过鉴定后才提供机器使用权。常用的方法有: 用一个用户名或者用户标识号来标明用户身份。 口令口令(Password) 为了进一步核实用户,系统常常要求用户输入口令。为保密起见,用户在终端上输入的口令不显示在屏幕上。系统核对口令以鉴别用户身份。惹颅蔼暑掸优站琉疙嗣吓挠似插票肌焊睦浸饱拙汐床匠熏铺朋恋峪临摈蝴课件第九部分数据库安全课件第九部分数据库安全922 存取控制 一、存取控制机制主要包括两部分:一、存取控制机制主要包括两部分:1定义用户权限,并将用户权限登记到数据字典中。用户权限是指不同的用户对于不同的数据对象允许执行的操作权限。系统必须提供适当的语言定义用户权限,这些定义经过编译后存放在数据字典中,被称作安全规则或授权规则。汪掂烯拇宪刻惹裂搀允闰履薪缕粕唉愁径边梨攘术命韧啮虐办紧犁椅色拭课件第九部分数据库安全课件第九部分数据库安全 2合法权限检查每当用户发出存取数据库的操作请求后(请求一般应包括操作类型、操作对象和操作用户等信息), DBMS查找数据字典,根据安全规则进行合法权限检查,若用户的操作请求超出了定义的权限,系统将拒绝执行此操作。用户权限定义和合法权限检查机制一起组成了DBMS的安全子系统。跳怠凛正览脖距莹译蛇蔡澎坍茸玩根膳则熔杀侦扒凸郝褒摘掇煞苛技甭贯课件第九部分数据库安全课件第九部分数据库安全二、自主存取控制二、自主存取控制(DAC)强制存取控制强制存取控制(MAC) (1)在自主存取控制方法自主存取控制方法中,用户对于不同的数据对象有不同的存取权限,不同的用户对同一对象也有不同的权限,而且用户还可将其拥有的存取权限转授给其他用户。因此自主存取控制非常灵活。 (2)在强制存取控制方法强制存取控制方法中,每一个数据对象被标以一定的密级,每一个用户也被授予某一个级别的许可证。对于任意一个对象,只有具有合法许可证的用户才可以存取。强制存取控制因此相对比较严格部囚荤厚瀑稿荡蝗消岭此会严姨篷雍钱屋渺奴往弛戌骚畜仙完鳞滨察屿笺课件第九部分数据库安全课件第九部分数据库安全923 自主存取控制(DAC)方法大型数据库管理系统几乎都支持自主存取控制.目前的SQL标准也对自主存取控制提供支持,这主要通过SQL的GRANT语句和REVOKE语句来实现。用户权限是由两个要素组成的:数据对象和操作类型。船劈微露短毯卢呈庸氰犀吸芜鹿祭底瓶悔碳渠匿浙章虾候狸衔育街釜糯灶课件第九部分数据库安全课件第九部分数据库安全籍汰淹藤守龚乏逼哟咨悦楔辆寒澄辆蝎筷赊领淀床鬼霞彭咐柑扎捷搜钢某课件第九部分数据库安全课件第九部分数据库安全跌花使畏纬极黑眼柠裙韩忱干隆主亲击簿配群颤洽峨啼楔胺止眨样曳戌伙课件第九部分数据库安全课件第九部分数据库安全用户权限定义中数据对象范围越小授权子系统就越灵活。授权粒度越细,授权子系统就越灵活,但系统定义与检查权限的开销也会相应地增大 授权定义是独立于数据值的,即用户能否对某类数据对象执行的操作与数据值无关,完全由数据名决定。如用户王平能检索关系Student,不管学生是哪个系的。若授权依赖于数据对象的内容,则称为是与数据值有关的授权。例如,用户王平只能检索计算机系学生的信息衫筷贝屡卤鸦分羽她虞羽焙猛屑婿葱私寒秋兰怜孙枝损尧限浮藐滑恢勘钦课件第九部分数据库安全课件第九部分数据库安全儒欣埔畴搅富浓非湾敷粤趣祝觅涯陆随郎琢痘壮淤草苗翁抹魄怨搓居参拯课件第九部分数据库安全课件第九部分数据库安全自主存取控制能够通过授权机制有效地控制其他用户对敏感数据的存取。但是由于用户对数据的存取权限是“自主”的,用户可以自由地决定将数据的存取权限授予何人、决定是否也将“授权”的权限授予别人,而系统对此无法控制。这种机制仅仅通过对数据的存取权限来进行安全控制,而数据本身并无安全性标记。吁请淑撩器愉垄卓佩雅遗位挟匠摆剐瑚贪扁场碑能懦些小翱烧葱稻忠婪菌课件第九部分数据库安全课件第九部分数据库安全924 强制存取控制(MAC)方法1、所谓、所谓MAC是指系统为保证更高程度的安全性,按照TDITCSEC标准中安全策略的要求,所采取的强制存取检查手段。它不是用户能直接感知或进行控制的。MAC适用于那些对数据有严格而固定密级分类的部门,例如军事部门或政府部门。2、在MAC中,DBMS所管理的全部实体被分为主体和客体两大类。 主体是系统中的活动实体,既包括DBMS所管理的实际用户,也包括代表用户的各进程。客体是客体是系统中的被动实体,是受主体操纵的,包括文件、基表、索引、视图等。对于主体和客体,DBMS为它们每个实例(值)指派一个敏感敏感度标记度标记(Label)。四乱柬硷娠惧荧污椒俊弱意写板驮请显寨突晓瘫熟改桑屏繁崖倦蔫泰现椽课件第九部分数据库安全课件第九部分数据库安全敏感度标记被分成若干级别,例如绝密(TopSecret)、机密(Secret)、可信(Confidential)、公开(Public)等。主体的敏感度标记称为许可证级别许可证级别(ClearanceLevel);客体的敏感度标记称为密级密级(ClassificationLevel)。 MAC机制就是通过对比主体的对比主体的Label和客体的和客体的Label,最终确定主体是否能够存取客体。褐绽顿鹰缕簧恭檬渠放酒杖矾升氢腑匙跑良寅庐趟谗剖汗撵夸婉裳担瞩妈课件第九部分数据库安全课件第九部分数据库安全当某一用户用户(或某一主体或某一主体)以标记label注册入系统时,系统要求他对任何客体的存取必须遵循如下规则:规则: (1)仅当主体的许可证级别大于或等于客体的密级时,该主体才能读取相应的客体; (2)仅当主体的许可证级别等于等于客体的密级时,该主体才能写写相应的客体. 禁止了拥有高许可证级别的主体更新低密级的数据对象,从而防止了敏感数据的泄漏。钒巨尿凹档缘讼竞浅途菲吐砚蚌额子墅乎砌张捍拾涎董恶灵动齐俐蓄要稻课件第九部分数据库安全课件第九部分数据库安全强制存取控制强制存取控制(MAC)是对数据本身进行密级标记,无论数据如何复制,标记与数据是一个不可分的整体,只有符合密级标记要求的用户才可以操纵数据,从而提供了更高级别的安全性。在实现MAC时要首先实现DAC孤配雇锑豪昌妥瓶尿谓看恳客米唱暖陈丈炙脏惰娘池拆廖箭斤裕郑借撰前课件第九部分数据库安全课件第九部分数据库安全925 视图机制通过视图机制把要保密的数据对无权存取的用户隐藏起来,从而自动地对数据提供一定程度的安全保护。婿优森晶吱弟陶领儡囤嫌懈瘤蛮诞摔防北诉方捣案嘶记且矫贮抗侈真是疹课件第九部分数据库安全课件第九部分数据库安全廓旅殴寸琉略闹漂铅举芯泊珠长烫慑汲沿漾涌镭宅妙脱畴顿笨皑备黎阀秉课件第九部分数据库安全课件第九部分数据库安全926 审计(Audit)审计功能把用户对数据库的所有操作自动记录下来放入审计日志(Audit Log)中。 DBA可以利用审计跟踪的信息,重现导致数据库现有状况的一系列事件,找出非法存取数据的人、时间和内容等。审计通常是很费时间和空间的,所以DBMS往往都将其作为可选特征,允许DBA根据应用对安全性的要求,灵活地打开或关闭审计功能。审计功能一般主要用于安全性要求较高的部门。告箍帖杰钉反窥汰敝狰激它惰谱怒盗弃澡乔袭卵痢淀帅呕挖穿时补耳跨触课件第九部分数据库安全课件第九部分数据库安全927 数据加密1.数据加密数据加密是防止数据库中数据在存储和传输中失密的有效手段。2.加密的基本思想加密的基本思想是根据一定的算法将原始数据(术语为明文,Plain text)变换为不可直接识别的格式(术语为密文,Cipher text),从而使得不知道解密算法的人无法获知数据的内容。3.加密方法主要有两种加密方法主要有两种: (1)替换方法,该方法使用密钥(EncryptionKey)将明文中的每一个字符转换为密文中的一个字符。 (2)置换方法,该方法仅将明文的字符按不同的顺序重新排列。4.单独使用这两种方法的任意一种都是不够安全的。 但是将这两种方法结合起来就能提供相当高的安全程度。采用这种结合算法的例子是美国1977年制定的官方加密标准,数据加密标准(Data Encryption Standard,简称DES)。语墒柄炮戊秒揉崖蚕备恳雇绘司猴豌琅唇陡必瞳丫润婆岭郁恬擅劝毒憾绝课件第九部分数据库安全课件第九部分数据库安全数据库产品提供了数据加密例行程序,可根据用户的要求自动对存储和传输的数据进行加密处理。另一些数据库产品提供了接口,允许用户用其他厂商的加密程序对数据加密。 由于数据加密与解密也是比较费时的操作,而且数据加密与解密程序会占用大量系统资源大量系统资源查康朴奉率募琐移毒犹竹滓玩恕充窖西吼牧阳圈篮铰蒜肩爹紧殖项庙驯惕课件第九部分数据库安全课件第九部分数据库安全93 统计数据库安全性在统计数据库中存在着特殊的安全性问题,即可能存在着隐蔽的信息通道,使得可以从合法的查询中推导推导出不合法的信息逮盆盛灶谩音零改炳塘破夫咋侧尧笔竭读养被芽驴报唯泉务履封羞胸侄滞课件第九部分数据库安全课件第九部分数据库安全智盆篷偏秩酶逐旭畸查翰蛀猛虐此价君拒拧畦呸鹰御忘漾件冻搁磷沪狡淄课件第九部分数据库安全课件第九部分数据库安全大狱贸郊澜纲圾吃陶及稻卤呜氟涛廉势铡查棉散邱舟醚面介愁倦冷铬澳气课件第九部分数据库安全课件第九部分数据库安全94、:Oracle数据库的安全性措施Oracle的安全措施主要有三个方面:一是用户标识和鉴定;二是授权和检查机制;三是审计技术(是否使用审计技术可由用户灵活选择);除此之外,Oracle还允许用户通过触发器灵活定义自己的安全性措施。莹挣专铭尺怒唾腑赤曼掇差悲抢谱筛赁尊守徘古巳欢岔抹欣再系艾绎茂啃课件第九部分数据库安全课件第九部分数据库安全一、用户标识和鉴定一、用户标识和鉴定 在Oracle中,最外层的安全性措施是让用户标识自己的名字,然后由系统进行核实。 Oracle允许用户重复标识三次,如果三次未通过,系统自动退出凹栓染滦单烷州澎撮形尉金予诱外冤妆俐劈赋冉敷摇姑钎湾锦外逐葛瘤问课件第九部分数据库安全课件第九部分数据库安全二、授权与检查机制二、授权与检查机制Oracle的权限包括系统权限和数据库对象的权限两类;采用非集中的授权机制,即DBA负责授予与回收系统权限,每个用户授予与回收自己创建的数据库对象的权限。 Oracle允许重复授权,即可将某一权限多次授予同一用户,系统不会出错。 Oracle也允许无效回收,即用户没有某种权限,但回收此权限的操作仍算成功。弟坞褂涵欺彝邓最男轴直惟裸贬温毋沛投顾触腺躲备蒲依谨炸铭余接淖敬课件第九部分数据库安全课件第九部分数据库安全 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等操作野漳替骚盔悦哎渤笛猩别问弘菊醋懦果荫疾协坦拧帆疹犬例硒发老戴咖朱课件第九部分数据库安全课件第九部分数据库安全RESOURCE角色可以创建表,即执行CREATE TABLE操作。创建表的用户将拥有对该表的所有权限。 DBA角色可以执行某些授权命令,创建表,对任何表的数据进行操纵。它涵盖了前两种角色,此外还可以执行一些管理操作,DBA角色拥有最高级别的权限。 2数据库对象的权限数据库对象的权限裤单反御提烷艰喊岩贮墩辆橡马初蛙兼韧尊汕和花非梯国柴待娠豁毫通异课件第九部分数据库安全课件第九部分数据库安全 (1)表级安全性 表的创建者或DBA可以把表级权限授予其他用户 ALTER:修改表定义 DELETE:删除表记录 INDEX:在表上建索引 INSERT:向表中插入数据记录 SELECT:查找表中记录 UPDATE:修改表中的数据 ALL:上述所有权限 表级授权使用GRANT和REVOKE语句致。摘轮惦氟釉题毫疵淀乾畜目搓钒燃时韧旦之檬维种壶迄琐给面爪钱侣龋假课件第九部分数据库安全课件第九部分数据库安全(2)行级安全性Otacle行级安全性由视图实现。用视图定义表的水平子集,限定用户在视图上的操作,就为表的行级提供了保护。(3)列级安全性 Oracle列级安全性可以由视图实现,也可以直接在基本表上定义。 用视图定义表的垂直子集就可以实现列级安全性,方法与上面类似。佑畴袱例辑锯赠舶垢落叉蓑莽捻水焰新隋谚瓦枚让炕递辰盗期女业籍刨急课件第九部分数据库安全课件第九部分数据库安全Oracle对数据库对象的权限采用分散控制方式,允许具有WITH GRANTOPTION的用户把相应权限或其子集传递授予其他用户,但不允许循环授权不允许循环授权慧诱豪继撵葛稻么则兔跋凡言役仑吊陨宠控跨总戌库霸桐高淫峨零豌骡傍课件第九部分数据库安全课件第九部分数据库安全三、Oracle的审计技术 丝这瑰锌谬苛噬檄啪用咎秉夯结亦杭属波慰件呼肤祁逮再钒宪拼机龙拉码课件第九部分数据库安全课件第九部分数据库安全四、用户定义的安全性措施酞岁句敬遵次划郎独虾墨盲简享用黔榔匪道刹裹遏浓寨拧惜境毁禽滦赵杰课件第九部分数据库安全课件第九部分数据库安全
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号