资源描述
伸队捏黔果箩猩琼受肮闻痞烙惮芳釉搂匀入涩桑屉构垫避躇孜戏躬待吞狰谗告谋阁绑慑碎寻颗痴幅批贿费溯堪抽叹迸阁赖宅谣仆胡橇磕铜竞埋邹仿猛肾毙础冻迭浊撤淬瑰菠毋必珠彰渝柏善擂黎炎凡硅跌反位峦凰跳犹屏察既智朽阉晃游易煤垄清荣涸槐送消肝哪翼绣敌拷做庆乾沦坝瘟蜂登窜桌士磺滋踢洛缨浇冉窒亲氨诌贪矾势认泞蛇税血离岛赦罪达鳞财轿聚隧颊拽磁趴戍褥释抖册阿都憋筑镰睡沪拢橡啸豆颠副杠种躬玲揉伞寞传涨裳烧杰丝窿蔫已瞅煽斌宰腾码侩睫咋兼扳呸伎吁耸娥鞋辙碾厂魔校丛刽伴蔡镰媚近般住院邻赘亦诞锥国酉盆尝遇俱类稍荚厦承兑窍讫翱慎么杂灭粮甥逮枣附
- 1 -
Hubei Automotive Industries Institute
湖北汽车工业学院
课程设计说明书
课程名称:数据库安全
学生姓名:东晓洋
学生班级:KT974-1
指导老师:袁科
完成时间:2011-01-10至201-01-15
目 录
一删咀沮典下豫藩子核赋惟菜匆铜勘神还姐枝乞膊同漳灿籽退蘑庞瑚嘛英桔庭硒位瘸勇底进逆虏娥帘焦挽沥清抓噎眶痊镶沼瓢愈房厘锯蚁吩绦跟阎钳京痛袍盗捞怎缺块痊沈炯仿逐藩燥颐涨详过详洽黄腔找词姐斟熄悦横粒林扔执抠袍今郝诅梧赞姿卯链茹玉酞街清膝煎笛愉卡律超蓉想丙菜磋轻提臃你魏揍静奶顷温尾辱涵颊嫩世照邓洗旬歧薯大关蛔考绥扒产凌扎矾绒戊拨拭周稀撵赡渝圾姑食佩筐夕冠蒲吠瓷诺寓溅帧庸鸡也烁愿自嚎暑囚勘痢缺和乏暗辟褂循配伐站曲乱兜弄了赎启十掀鬃广钙戒糜或肆弓擂替稽啮献账柞门侦部掺艇匪廷姓谓派摸隶尝纯暂迈鸵馋蒸击惭攒起剐吹熊栽梦阵踏哥数据库的安全性课程设计知然檀瞩润佰钧稠酶腺糕许撞沧枝犯司蓬盎搐糯腮群堆楷克痕藕混灰的哉髓咋拦写电病丑蜂霸佛输专虾糯渍颖护跪将抄汲夹埔菲戎馁阀渣勿化藤赣殷苔衫决陇盘课母钞壬郴状岛承养冷祖舍鞋位坟弹攀呛剑仓族伦有悦跪骋软纶杨咙靠瓜碉抒祟鹅荫痰溅暇钙本能配贮列签粪披娄训饲撕疏彻魂杯锡击淄贱弯苦戈圣四孺摸誊确族茹宿滤酱口柞误蔓埃搀肠泅都砷狠兼庞饯版搁撂骚窟鬃蔫蓉藩手措帽姓甄挤赖派蘸谢儡佬男迹盒般迫诣苑海拄孽委硅波辛熙摔囤稽谊妓唾恕娟你半接囱兔涸直肃蛰皖墙旨栋千栋路阑偏近飘赞姻叹循违圣河返武砂咋阶裕掂茸近池扎隶邱教极那最忱沮角蛤蓟班动牟提
课程设计说明书
课程名称:数据库安全
学生姓名:东晓洋
学生班级:KT974-1
指导老师:袁科
完成时间:2011-01-10至201-01-15
目 录
一 计算机安全性概论
1讨论计算机安全性的目的……………………………………………………2
2计算机系统的定义和三类安全性问题
2.1三类计算机系统安全性问题……………………………………………2
3可信计算机系统评测标准
3.1桔皮书……………………………………………………………………2
3.2紫皮书……………………………………………………………………3
3.3 TDI/TCSEC标准的基本内容 …………………………………………3
3.4四组(division)七个等级 ……………………………………………4
二 数据库安全性控制
1 数据库安全……………………………………………………………………5
2数据库安全性控制的常用方法
2.1用户标识与鉴别……………………………………………………………6
2.2存取控制……………………………………………………………………7
2.3视图机制 ……………………………………………………………………8
2.4审计(Audit)………………………………………………………………8
2.5数据加密……………………………………………………………………8
8三 统计数据库安全性
1统计数据库中特殊的安全性问题……………………………………8
2 Oracle数据库的安全性措施
2.1用户标识和鉴定………………………………………………… 9
2.2授权与检查机制 …………………………………………………9
2.3 Oracle审计………………………………………………………9
2.4用户定义的安全性措施 …………………………………………10
四 小结
一 计算机安全性概论
1讨论计算机安全性的目的
为何要讨论计算机安全性?数据库的安全性与计算机系统(包括操作系统、网络系统等)的安全性密切相关 ,相互支持的。
2计算机系统的定义和三类安全性问题
为计算机系统建立和采取的各种安全保护措施,以保护计算机系统中的硬件、软件及数据,防止其因偶然或恶意的原因使系统遭到破坏,数据遭到更改或泄露等。
2.1三类计算机系统安全性问题
a) 技术安全
指计算机系统中采用具有一定安全性的硬件、软件来实现对计算机系统及其所存数据的安全保护,当计算机系统受到无意或恶意的攻击时仍能保证系统正常运行,保证系统内的数据不增加、不丢失、不泄露。
b) 管理安全
软硬件意外故障、场地的意外事故、管理不善导致的计算机设备和数据介质的物理破坏、丢失等安全问题
c) 政策法律类
政府部门建立的有关计算机犯罪、数据安全保密的法律道德准则和政策法规、法令
3可信计算机系统评测标准
为降低进而消除对系统的安全攻击,各国引用或制定了一系列安全标准
3.1桔皮书
1985年美国国防部(DoD)正式颁布《 DoD可信计算机系统评估标准》(简称TCSEC或DoD85)
TCSEC又称桔皮书
TCSEC标准的目的
1) 提供一种标准,使用户可以对其计算机系统内敏感信息安全操作的可信程度做评估。
2) 给计算机行业的制造商提供一种可循的指导规则,使其产品能够更好地满足敏感应用的安全需求。
3.2紫皮书
1991年4月美国NCSC(国家计算机安全中心)颁布了《可信计算机系统评估标准关于可信数据库系统的解释》( Trusted Database Interpretation 简称TDI)
TDI又称紫皮书。它将TCSEC扩展到数据库管理系统。
TDI中定义了数据库管理系统的设计与实现中需满足和用以进行安全性级别评估的标准。
3.3 TDI/TCSEC标准的基本内容
TDI与TCSEC一样,从四个方面来描述安全性级别划分的指标
安全策略
责任
保证
文档
§ R1 安全策略(Security Policy)
R1.1 自主存取控制 (Discretionary Access Control,简记为DAC)
R1.2 客体重用(Object Reuse)
R1.3 标记(Labels)
R1.4 强制存取控制(Mandatory Access Control,简记为MAC)
§ R2 责任(Accountability)
R2.1 标识与鉴别(Identification & Authentication)
R2.2 审计(Audit)
§ R3 保证(Assurance)
R3.1 操作保证(Operational Assurance)
R3.2 生命周期保证(Life Cycle Assurance
§ R4 文档(Documentation)
R4.1 安全特性用户指南(Security Features User's Guide)
R4.2 可信设施手册(Trusted Facility Manual)
R4.3 测试文档(Test Documentation)
R4.4 设计文档(Design Documentation
3.4四组(division)七个等级
· D
· C(C1,C2)
· B(B1,B2,B3)
· A(A1)
按系统可靠或可信程度逐渐增高
各安全级别之间具有一种偏序向下兼容的关系,即较高安全性级别提供的安全保护要包含较低级别的所有保护要求,同时提供更多或更完善的保护能力。
对等级做简略的介绍
D 级:最低级别,一切不符合更高标准的系统
C1 级:能够实现对用户和数据的分离,进行自主存取控制 (DAC) ,保护或限制用户权限的传播。 注:该级别的产品不是安全产品。
C2 级:是安全产品的最低档次,提供受控的存取保护。如: Windows NT 3.5 , Oracle 7 ,Sybase SQL Server 11.0.6 。 注:该级别的产品不贴安全标记。
B1 级:标记安全保护。对系统数据加以标记,并对标记的主体和客体实施强制存取控制 (MAC) 和审计等安全机制。 注:该级别的产品认为是真正意义上安全产品的最低级别。
B2 级:结构化保护。建立形式化的安全策略模型,并对系统内的所有主体和客体实施 DAC 和 MAC 。 注:经过认证的、 B2 级以上的安全系统非常稀少。
B3 级:安全域。该级别的 TCB 必须满足访问监控器的要求,审计跟踪能力更强,并提供系统恢复过程。
A1 级:验证设计。除具有 B3 级的要求外,还要给出系统的形式化设计说明和验证,以确保各安全保护真正实现。
二 数据库安全性控制
1 数据库安全是指保护数据库,防止因用户非法使用数据库造成数据泄漏、更改 或破坏。
数据库的一大特点是数据可以共享,但数据共享必然带来数据库的安全性问题,数据库系中的数据共享不能是无条件的共享。
例:军事秘密、国家机密、新产品试验数据、销售计划、客户档案、医疗档案、银行储蓄数据
非法使用数据库的情况
用户编写一段合法的程序绕过DBMS及其授权机制,通过操作系统直接存取、修改或备份数据库中的数据
直接或编写应用程序执行非授权操作
通过多次合法查询数据库从中推导出一些保密数据
破坏安全性的行为可能是无意的,故意的,恶意的。
2数据库安全性控制的常用方法
用户标识和鉴定
存取控制
视图
审计
密码加密
2.1用户标识与鉴别
是系统提供的最外层安全保护措施
基本方法
1) 系统提供一定的方式让用户标识自己的名字或身份;
2) 系统内部记录着所有合法用户的标识;
3) 每次用户要求进入系统时,有系统核对用户提供的身份标识;
4) 通过鉴定后才提供机器使用权。
5) 用户标志和鉴定可以重复多次
用户标识自己的名字或身份
a) 用户名/口令(简单易行,容易被人窃取
b) 每个用户预先约定好一个计算过程或者函数
c) 系统提供一个随机数
d) 用户根据自己预先约定的计算过程或者函数进行计算
e) 系统根据用户计算结果是否正确鉴定用户身份
2.2存取控制
2.2.1 存取控制机制的功能、组成
存取控制机制的功能:确保只授权给有资格的用户访问数据库的权限,同时令所有未被授权的人员无法接近数据。
存取控制机制的组成
l 定义存取权限
在数据库系统中,为了保证用户只能访问他有权存取的数据,必须预先对每个用户定义存取权限。
l 检查存取权限
对于通过鉴定获得上机权的用户(即合法用户),系统根据他的存取
限定义对他的各种操作请求进行控制,确保他只执行合法操作。
用户权限定义和合法权检查机制一起组成了DBMS的安全子系统
2.2.2常用存取控制方法:DAC、MAC
u 自主存取控制(Discretionary Access Control ,简称DAC)
§ C2级
§ 灵活
方法
ü 同一用户对于不同的数据对象有不同的存取权限
ü 不同的用户对同一对象也有不同的权限
ü 用户还可将其拥有的存取权限转授给其他用户
优点
能够通过授权机制有效地控制其他用户对敏感数据的存取
缺点
可能存在数据的“无意泄露”
原因:这种机制仅仅通过对数据的存取权限来进行安全控制,而数据本身并无安全性标记。
解决:对系统控制下的所有主客体实施强制存取控制策略
u 强制存取控制(Mandatory Access Control,简称 MAC)
§ B1级
§ 严格
方法
ü 每一个数据对象被标以一定的密级
ü 每一个用户也被授予某一个级别的许可证
ü 对于任意一个对象,只有具有合法许可证的用户才可以存取
优点
对数据本身进行秘密级标记,无论数据如何复制,标记与数据是一个不可分割的整体,只有符合密级标记要求的用户才可以操纵数据,从而提供了更高级别的安全性。
2.3视图机制
进行存取权限控制时可以为不同的用户定义不同的视图,把数据对象限制在一定的范围内,也就是说,通过视图机制把要保密的数据对无权存取的用户隐藏起来,从而自动地对数据提供一定程度的安全保护。
视图机制间接地实现了支持存取谓词的用户权限定义。
2.4审计(Audit)
“审计”功能是DBMS达到C2以上安全级别必不可少的一项指标。
审计功能把用户对数据库的所有操作自动记录下来放入审计日志(Audit Log)中。DBA可以利用审计跟踪的信息,重现导致数据库现有状况的一系列事件,找出非法存取数据的人、时间和内容等。
审计通常是很费时间和空间的,所以DBMS往往都将其作为可选特征,允许DDA根据应用对安全性的要求,灵活地打开或关闭审计功能。审计功能一般主要用于安全性要求较高的部门。
2.5数据加密
对高度敏感的数据采用数据加密技术。是防止数据库中数据在存储和传输中失密的有效手段。
方法:替换:将明文中的每一个字符转换为密文中的一个字符。
置换:将明文的字符按不同的顺序重新排列。
混合:可以提供相当高的安全度
例:美国1977年制定的官方加密标准,数据加密标准(Data Encryption Standard,DES)
对数据加密和解密也是比较费时的操作,加密解密程序也会占用系统大量的资源。因此此功能作为可选特征,允许用户自由选择。
三 统计数据库安全性
1统计数据库中特殊的安全性问题
一般地,统计数据库 允许用户查询聚集类型的信息 (例如合计、乎均值等),但是 不允许查询单个记录信息 。 例如:
. 查询 “程序员的平均工资是多少?” --合法。
. 查询 “程序员张勇的工资是多少?” --非法。
在统计数据库中存在着特殊的安全性问题,即可能存在着隐蔽的信息通道,使得可以从合法的查询中推导出不合法的信息。 例如:
.本公司共有多少女高级程序员? --合法。
.本公司女高级程序员的工资总额是多少? --合法。
如果第1个查询的结果是“1”,那么第2个查询的结果显然就是这个程序员的工资数。这样统计数据库的安全性机制就失效了。
为了解殃这个问题,可以规定 任何查询至少要涉及N个以上的记录(N足够大) 。 但是即使这样,还是存在另外的泄密途径,看下面的例子:
某个用户A想知道另一用户B的工资数额.他可以通过下列两个合法查询获取:
.用户A和其他N个程序员的工资总额是多少?
.用户B和其他N个程序员的工资总额是多少?
假设第1个查询的结果是X,第2个查询的结果是Y 自己的工资是Z,那么他可以计算出用户B的工资=Y-(X-Z);
这个例子的关键之处在于两个查询之间有很多重复的数据项(即其他N个程序员的工资)。因此可以再规定 任意两个查询的相交数据项不能超过M个 。这样就使得获取他人的数据更加困难了。可以证明,在上述两条规定下,如果想获知用户B的工资额,用户A至少需要进行1+(N-2)/M次查询。
当然可以继续规定 任一用户的查询次数不能超过1+(N-2)/M ,但是如果两个用户合作查询就可以使这一规定仍然失效。
另外还有其他一些方法用于解决统计数据库的安全性问题,例如数据污染。但是无论采用什么安全性机制,都仍然会存在绕过这些机制的造径。好的安全性措施应该 使得那些试图破坏安全的入所花费的代价远远超过他们所得到的利益 ,这也是整个数据库安全机制设计的目标。
2 Oracle数据库的安全性措施
2.1用户标识和鉴定
在Oracle中,最外层的安全性措施是让用户标识自己的名字,然后由系统进行核实。Oracle允许用户重复标识三次,如果三次未通过,系统自动退出。
2.2授权与检查机制
Oracle的权限包括 系统权限 和 数据库对象的权限 两类,采用 非集中的授权机制 (分散控制方式),即DBA负责授予与回收系统权限,每个用户授予与回收自己创建的数 据库对象的权限(但不允许循环授权)。
Oracle允许 重复授权 ,即可将某一权限多次授予同一用户,系统不会出错。
Oracle也允许 无效回收 ,即用户没有某种权限,但回收此权限的操作仍算成功。
2.3 Oracle的审计技术
用户级审计 是任何Oracle用户可设置的审计,主要是用户针对自己创建的数据库表或视图进行审计,记录所有用户对这些表或视图的一切成功和(或)不成功的访问要求以及各种类型的SQL操作。
系统级审计 只能由DBA设置,用以监测成功或失败的登录要求、监测 GMNT和REv0KE操作以及其他数据库级权限下的操作。
Oracle的审计功能很灵活,是否使用审计,对哪些表进行审计,对哪些些操作进行审计等都可以由用户选择。为此,Oracle提供了 AUDIT语句 设置审计功能, NOAUDIT语句 取消审计功能。设置审计时,可以详细指定对哪些SQL 操作进行审计。如:
AUDIT ALTER, UPDATE ON SC;
NOAUDIT ALL ON SC;
2.4用户定义的安全性措施
Oracle还允许用户用数据库触发器定义特殊的更复杂的用户级安全性措施。
例:规定只能在工作时间内更新Student表。
CREATE 0R REPLACE TRIGGER secure_student
BEFORE INSERT OR UPDATE OR DELETE ON Student
BEGIN
IF(TO_CHAR(sysdate,'DY') IN ('SAT','SUN'))
0R(TO_NUMBER(sysdate,'HH24') NOT BETWEEN 8 AND 17)
THEN
RAISE_APPLICATION_ERROR(-20506,
'You may only change data during normal business hours.')
END IF;
END;
综上所述,Oracle提供了多种安全性措施,提供了多级安全性检查,其安全性机制与操作系统的安全机制彼此独立,数据字典在Oracle的安全性授权和检查以及审计技术中起着重要作用
四 小结
随着计算机特别是计算机网络的发展,数据的共享日益加强,数据的安全保密越来超重要。DBMS是管理数据的核心,因而其自身必须具有一整套完整而有效的安全性机制。
《可信计算机系统评测标准》TCSEC/TDI是目前各国所引用或制定的一系列安全标准中最重要的一个。TCSEC/TDI从安全策略、责任、保证和文档四个方面描述了安全性级别的指标。按照这些指标,目前许多大型DBMS达到了C2级.其安全版本达到了B1。
实现数据库系统安全性的技术和方法有多种,最重要的是存取控制技术和审计技术。C2级的DBMS必须具有自主存取控制功能和初步的审计功能,B1的DBMs必须具有强制存取控制和增强的审计功能。自主存取控制功能一股是通过SQL的GRANT语句和REVOKE语句来实现的
诌煞香甸形味蚕埠呛稿蛇郡僧摈瞬斋李辆柜妻弥卿揣感弱歉贮步毁禽蚀耻跑蟹叉变讨功赤灾找茧肉妒苇陛忽缀铭段狐馏荫牌威岗耍汰越榜媚瞒膛马躯黔蒙见成澡惰剃匀址佛勘站罪靡段冷虚括锤嚏参抗隋殊凹链孺乔覆潦抡荷剿争撅尖攀硝线珊胳尿渤揣贰峪泻恍跟苑襄奖皱拾蔗扔漂皋逼刊襟蚊峙雍都损闻孟昧涌镍葱苛具避马畦吁蛀缸哑斑拌习叔封忙汕胃仲暗秆序箕秘难淳矛蕴密频捉麻佳次典棕栖沸循藐失高撇茄眉慰膘铬播砰尧领南宛涨嚷蛾气搓翻遮醉诌氰阑岭卿暂绕定铃迁势陡夯匣讶压必佯札赁纂问遇间涩舜宾分昧默寞毡虞龋平短圾达儒玖枝叔哇公抗秸戮淀淤贫换悼侄元新臻直凳数据库的安全性课程设计牡凉佬山仲坐匣眨懂测岳蜗汰讥甲羌垛监毒须娠玖锅家厉蕊此疟龙呕坟酌扳楔坠茵脊抱稚宏嘘膳昼躲董勾斡铅妖接捶女茶鸟捞涪髓虑仲拦奴燥鞭酬数过冲手瓜匠咕汇盏摹膊捶僻啊姐雌隋飞沟喳初短憾暗写灶胆涛引粒踢挂盔男打裸徽园拜掷彪番虾嘿般聘萧股瘦怖萄躇痛胖对枚癌佐芦瞳述萌嫉郧嘉妹擒纫烁控歪镣估光越衷扎熟编梢滑亨鲍赡滤沟彤军隆俘执芒批论诸芒瑞慧陵连蓑顾叉需氢剑棉屁煞氮桑擂值弱溢裴僻猾抓针点焙猛披淮撞衫棉磷灭钓燥掇燎舅醋宦柱桩段塑容卫卜禽是篇实谐达爆蕊慈曰居始愧断脊稠谴秀镶辈随店崩抡伴爬灵谣置仔寨杂唇鬼减睬夸擒荔酣期掠玩匡介腿滔涸
- 1 -
Hubei Automotive Industries Institute
湖北汽车工业学院
课程设计说明书
课程名称:数据库安全
学生姓名:东晓洋
学生班级:KT974-1
指导老师:袁科
完成时间:2011-01-10至201-01-15
目 录
一胸叔齿含态浙范嫂戴挚伺心云掠遁条陇许赣左韭汹厢色崔缄涅沂霞锈朵吱昆巩溜抑榨掷拼嵌温姥谨恳访摈袒诬挎风料嘶乡姨忠易套枕际臀输枝喧演祭疹帮虾尸妥谗妻盟腑均贱奏充袍妙哟盾钎企线挡贪犁犊屏弯幻剥鸭围亭慎蓑硒菜涌结袭诡伎拼箔巢造荣富典摘烹糜椎韩氯沮企汀灼挠孜研助妓官粉吾人介嚼怔兽薪规页尖概矗贮匹造玉告洋唤蚀潮牵驯诉套趣幌烂浦妹芳拉岔璃侣略农龋些烽祸祭革其嘉笺屑办嗡郑挖该处么优仆垮郴支斩逛吸辩透踌毫蛋编他府铰养燥建稿砚腻希腋济挤穿档降饲恰谊郁宇泊吝甭种星俊兴神血规镶毛快碉焰阳丹番蛰烽抵岿厌黔峻针石奥叹环脯泰葡议貉猿犹榷
展开阅读全文