数据库技术及应用课件第8章数据库保护.ppt
《数据库技术及应用课件第8章数据库保护.ppt》由会员分享,可在线阅读,更多相关《数据库技术及应用课件第8章数据库保护.ppt(51页珍藏版)》请在三一办公上搜索。
1、第8章 数据库保护,8.1 数据库的安全性 8.2 数据库的完整性 8.3 数据库的并发控制 8.4 数据库的恢复 习题8,8.1 数据库的安全性,数据库的安全性是指保护数据库,防止不合法的使用所造成的数据泄密、更改或破坏。影响数据库安全的因素很多,包括软、硬件故障(如操作系统、DBMS故障或CPU存储介质故障)、非法对数据库存取、操作人员的误操作、自然灾害、人为的破坏与盗窃以及计算机病毒等。本节只讨论计算机系统在保证数据库安全方面的安全措施。,在一般计算机系统中,安全措施是层层设置的。图8-1所示是常见的计算机系统安全模型。,图8-1 计算机系统的安全模型,8.1.1 用户标识与鉴别 1.确
2、认用户名 用一个用户名或者用户标识号表明用户身份,系统内部记录着所有合法用户的标识。2.口令 为了进一步核实用户,系统常常要求用户输入口令,只有口令正确才能进入系统。,3.约定计算过程 通过用户名和口令鉴别用户的方法简单易行,但用户名和口令容易被人窃取。4.利用用户具有的物品 钥匙就是属于这种性质的鉴别物,在计算机系统中常用磁卡作为身份凭证。5.利用用户的个人特征 指纹、声音等都是用户的个人特征。,8.1.2 存取控制 1.存取控制机制的构成 存取控制机制主要包括以下两部分:(1)定义用户权限,且将用户权限登记到数据字典中。(2)合法用户检查。,2.存取机制的类别 当前的DBMS一般都支持自主
3、存取控制,有些大型的DBMS同时还支持强制存取控制。(1)自主存取控制。(2)强制存取控制。,8.1.3 视图机制 视图的一个优点就是可以对机密的数据提供安全保护。在系统中,可以为不同的用户定义不同的视图,通过视图把数据对象限制在一定范围内,把要保密的数据对无权存取的用户隐藏起来,从而自动地对数据提供一定程度的安全保护。,8.1.4 数据加密 对于高度敏感数据,例如财务数据、军事数据、国家机密,除以上安全性措施外,还可以采用数据加密技术。1.替换方法 该方法使用密钥将明文中的每一个字符转换为密文中的字符。2.置换方法 该方法仅将明文的字符按不同的顺序重新排列。,8.1.5 审计 审计日志包括以
4、下内容:(1)操作类型(例如,修改、查询等)。(2)操作终端标识与操作者标识。(3)操作日期和时间。(4)所涉及的数据(例如,表、视图、记录、属性等)。(5)操作前的数据和操作后的数据。,8.1.6 用户定义的安全性措施 除了利用数据库管理系统提供的安全性功能外,还可以使用触发器定义一些用户级的安全性措施。例如,最典型的用户定义的安全性控制措施是:可以规定用户只能在指定的时间内对表进行更新操作。,8.2 数据库的完整性,8.2.1 完整性约束条件 完整性检查是围绕完整性约束条件进行的。因此,完整性约束条件是完整性控制机制的核心。,1.静态列级约束 静态列级约束是对一个列的取值域的说明,这是最常
5、用、也最容易实现的一类完整性约束。静态列级约束包括以下几个方面:(1)对数据类型的约束。(2)对数据格式的约束。(3)对取值范围或取值集合的约束。(4)对空值的约束。(5)其他约束。,2.静态元组级约束 一个元组是由若干个属性值组成的。静态元组级约束是对元组的属性组值的限定,及规定了属性之间的值或结构的相互制约关联。3.静态关系约束 在一个关系的各个元组之间或者若干关系之间常常存在各种关联或制约约束,这种约束称为静态关系约束。常见的静态关系约束有实体完整性约束、参照完整性约束、函数依赖约束和统计约束。,4.动态列级约束 动态列级约束是指修改列定义或修改列值时必须满足的约束条件。(1)修改列定义
6、时的约束。例如,将允许空值的列改为不允许空值时,如果该列目前已存在空值,则拒绝这种修改。(2)修改列值时的约束。修改列值有时需要参照其旧值,并且新、旧值之间需要满足某种约束条件。例如,职工的工龄只能增加,职工的工资不得低于原来的工资等。,5.动态元组级约束 动态元组级约束是指当修改元组的值时,元组中字段组或字段间需要满足某种约束。6.动态关系约束 动态关系约束是加在关系变化前、后状态上的限制条件。,表8-1 完整性约束条件,8.2.2 完整性控制 1.完整性控制机制应具有的功能 DBMS的数据库完整性控制机制应具有三个方面的功能:(1)定义功能,即提供定义完整性约束条件的机制。(2)检查功能,
7、即检查用户发出的操作请求,看其是否违背了完整性约束条件。(3)保护功能,即监视数据操作的整个过程,如果发现有违背了完整性约束条件的情况,则采取一定的动作来保证数据的完整性。,2.立即执行约束和延迟执行约束 根据完整性检查的时间不同,可把完整性约束分为立即执行约束和延迟执行约束。,8.3 数据库的并发控制,8.3.1 事务及并发控制的基本概念 事务是多用户系统的一个数据操作基本单元。由于多用户数据库的事务非常多,如果事务串行执行,即每个时刻只有一个用户程序运行,而其他用户程序必须等到这个用户程序结束以后才能运行,这样就会浪费大量的系统资源。,8.3.2 并发操作引起的问题 下面我们以火车定票系统
8、为例,说明并发操作带来的问题。假如,火车定票系统中有这样一个活动序列(如图8-2(a)所示):(1)甲售票点(甲事务)读出某车次的车票余额A,设A=20。(2)乙售票点(乙事务)读出同一车次的车票余额A,也为20。,(3)甲售票点卖出一张车票,修改余额AA-1,所以A为19,把A写回数据库。(4)乙售票点也卖出一张车票,修改余额AA-1,所以A为19,把A写回数据库。,图8-2 三种数据不一致性的实例(a)丢失修改;(b)不可重复读;(c)读“脏”数据,1.丢失修改 两个事务T1和T2读入同一数据并进行修改,T2提交的结果破坏了T1提交的结果,导致T1的修改被丢失,如图8-2(a)所示。2.不
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库技术 应用 课件 数据库 保护

链接地址:https://www.31ppt.com/p-5985634.html