数据库原理与应用 Oracle版 教学课件 ppt 作者 马忠贵 宁淑荣 曾广平 姚琳_ 第11章 数据库的安全保护

上传人:E**** 文档编号:89495218 上传时间:2019-05-25 格式:PPTX 页数:45 大小:305.33KB
返回 下载 相关 举报
数据库原理与应用 Oracle版  教学课件 ppt 作者  马忠贵 宁淑荣 曾广平 姚琳_ 第11章 数据库的安全保护_第1页
第1页 / 共45页
数据库原理与应用 Oracle版  教学课件 ppt 作者  马忠贵 宁淑荣 曾广平 姚琳_ 第11章 数据库的安全保护_第2页
第2页 / 共45页
数据库原理与应用 Oracle版  教学课件 ppt 作者  马忠贵 宁淑荣 曾广平 姚琳_ 第11章 数据库的安全保护_第3页
第3页 / 共45页
数据库原理与应用 Oracle版  教学课件 ppt 作者  马忠贵 宁淑荣 曾广平 姚琳_ 第11章 数据库的安全保护_第4页
第4页 / 共45页
数据库原理与应用 Oracle版  教学课件 ppt 作者  马忠贵 宁淑荣 曾广平 姚琳_ 第11章 数据库的安全保护_第5页
第5页 / 共45页
点击查看更多>>
资源描述

《数据库原理与应用 Oracle版 教学课件 ppt 作者 马忠贵 宁淑荣 曾广平 姚琳_ 第11章 数据库的安全保护》由会员分享,可在线阅读,更多相关《数据库原理与应用 Oracle版 教学课件 ppt 作者 马忠贵 宁淑荣 曾广平 姚琳_ 第11章 数据库的安全保护(45页珍藏版)》请在金锄头文库上搜索。

1、数据库原理与应用,(Oracle版),人民邮电出版社,2,第11章 数据库的安全保护,11.1 数据库的安全性 11.2 数据库的完整性控制 11.3 数据库的并发性控制 11.4 数据库的备份与恢复技术,11.1 数据库的安全性,问题的提出 数据库的一大特点是数据可以共享 数据共享必然带来数据库的安全性问题 数据库系统中的数据共享不能是无条件的共享 例: 军事秘密、国家机密、新产品实验数据、 市场需求分析、市场营销策略、销售计划、 客户档案、医疗档案、银行储蓄数据,人民邮电出版社,3,11.1 数据库的安全性,计算机系统安全性 为计算机系统建立和采取的各种安全保护措施,以保护计算机系统中的硬

2、件、软件及数据,防止其因偶然或恶意的原因使系统遭到破坏,数据遭到更改或泄露等。 三类计算机系统安全性问题 技术安全类 管理安全类 政策法律类,人民邮电出版社,4,11.1 数据库的安全性,TCSEC/TDI安全级别划分,人民邮电出版社,5,11.1 数据库的安全性,计算机系统中,安全措施是一级一级层层设置。,人民邮电出版社,6,计算机系统的安全模型,11.1 数据库的安全性,数据库安全性控制的常用方法 用户标识和鉴定 存取控制 视图 审计 密码存储,人民邮电出版社,7,11.1 数据库的安全性,用户标识与鉴别(Identification & Authentication) 系统提供的最外层安

3、全保护措施 用户标识 口令 系统核对口令以鉴别用户身份 用户名和口令易被窃取 每个用户预先约定好一个计算过程或者函数,人民邮电出版社,8,11.1 数据库的安全性,存取控制机制组成 定义用户权限 合法权限检查 用户权限定义和合法权检查机制一起组成了 DBMS的安全子系统,人民邮电出版社,9,11.1 数据库的安全性,常用存取控制方法 自主存取控制(Discretionary Access Control ,简称DAC) C2级 灵活 强制存取控制(Mandatory Access Control,简称 MAC) B1级 严格,人民邮电出版社,10,11.1 数据库的安全性,自主存取控制方法 通

4、过 SQL 的 GRANT 语句和 REVOKE 语句实现 用户权限组成 数据对象 操作类型 定义用户存取权限:定义用户可以在哪些数据库对象上进行哪些类型的操作 定义存取权限称为授权,人民邮电出版社,11,11.1 数据库的安全性,数据加密 数据加密是防止数据库中数据在存储和传输中失密的有效手段。 加密的基本思想是根据一定的算法将原始数据(明文)变换为不可直接识别的格式(密文),从而使得不知道解密算法的人即使获取了密文无法获知原文。 加密的方法有两种:替换方法(使用密匙)和置换方法(按不同的顺序从新排列)。,人民邮电出版社,12,11.1 数据库的安全性,审计管理 审计功能把用户对数据库的所有

5、操作自动记录下来,存放在审计日志中。 DBA可以利用审计跟踪的信息,重现导致数据库现有状况的一系列事件,找出非法存取数据的人、时间和内容等。,人民邮电出版社,13,11.1 数据库的安全性,Oracle系统的安全措施 Oracle 11g的安全性体系 1)物理层的安全性 2)用户层的安全性 3)操作系统的安全性 4)网络层的安全性 5)数据库系统层的安全性 Oracle 11g的安全性机制 系统安全机制 数据安全机制,人民邮电出版社,14,11.2 数据库的完整性控制,数据库系统提供的监测机制,确保存储数据的规范,称为完整性保护 实体完整性 域完整性 参照完整性 用户定义完整性,人民邮电出版社

6、,15,11.2 数据库的完整性控制,1)实体完整性(Entity Integrity) 若属性A是关系R的主属性,则属性A不能取空值且取值唯一; 就是一个关系模型中的所有元组都是惟一的,没有两个完全相同的元组,也就是一个二维表中没有两个完全相同行,也称为行完整性。,人民邮电出版社,16,例:学生(学号,姓名,性别,专业号,年龄),11.2 数据库的完整性控制,域完整性 对关系R中属性(列)数据的规范,限制属性的数据类型、格式以及取值范围。 就是对表中列数据的规范,也称列完整性,用于限制列的数据类型、格式以及取值范围。,人民邮电出版社,17,11.2 数据库的完整性控制,参照完整性 在关系模型

7、中实体及实体间的联系都是用关系来描述的,因此存在着关系与关系间的引用。 参照完整性是通过定义外键来(存在或为空)建立的。 例1 学生实体、专业实体 学生(学号,姓名,性别,专业号,年龄) 专业(专业号,专业名) 学生关系引用了专业关系的主码“专业号”。 学生关系中的“专业号”值必须是确实存在的专业的专业号,即专业关系中有该专业的记录。,北京科技大学通信工程系,18,11.2 数据库的完整性控制,用户定义的完整性 针对某一具体关系数据库的约束条件,反映某一具体应用所涉及的数据必须满足的语义要求 例:工龄=0,北京科技大学通信工程系,19,11.3 数据库的并发性控制,事务 事务(Transact

8、ion)是用户定义的一个数据库操作序列,这些执行全部操作,要么一个操作都不执行,是一个不可分割的工作单元。 一个事务由应用程序中的一组操作序列组成,在关系型数据库中,它可以是一条SQL语句、一组SQL语句或一个程序段。 事务是这样一种机制,它确保多个SQL语句被当作单个工作单元来处理。,人民邮电出版社,20,11.3 数据库的并发性控制,在SQL语言中,事务控制的语句有:BEGIN TRANSACTION、COMMIT、ROLLBACK。如果用户没有指明事务的开始和结束,DBMS按缺省规定自动划分事务。用户以BEGIN TRANSACTION开始事务,以COMMIT或ROLLBACK结束事务。

9、COMMIT表示提交事务,用于正常结束事务。ROLLBACK表示回滚,在事务执行过程中发生故障,事务不能继续,撤消事务中所有已完成的操作,回到事务开始的状态。,人民邮电出版社,21,11.3 数据库的并发性控制,事务具有四个特性: 原子性(Atomicity) 一致性(Consistency) 隔离性(Isolation) 持续性(Durability) 简称为ACID特性,人民邮电出版社,22,11.3 数据库的并发性控制,并发控制的原理和方法,人民邮电出版社,23,11.3 数据库的并发性控制,并发控制方法主要有: 封锁(Locking)方法 时间戳(TimeStamp)方法 乐观(Opt

10、imistic)方法 本章主要介绍在DBMS中使用较多的封锁方法。,人民邮电出版社,24,11.3 数据库的并发性控制,照锁的权限来分,基本的封锁类型有两种: 排它锁(Exclusive Locks,简记为X锁) 排它锁又称为写锁。如果事务T对某个数据D(可以是数据项、记录、数据集乃至整个数据库)加上X锁,那么只允许T读取和修改D,其它任何事务都不能再对D加任何类型的锁,直到T释放D上的锁。这就保证了其它事务在T释放D上的锁之前不能再读取和修改A。 共享锁(Share Locks,简记为S锁) 共享锁又称为读锁。若事务T对某个数据D加上S锁,则事务T可以读D,但不能修改D,其它事务只能再对D加

11、S锁,而不能加X锁,直到T释放D上的S锁。这就保证了其它事务可以读D,但在T释放D上的S锁之前其它事务不能对D做任何修改。,人民邮电出版社,25,11.3 数据库的并发性控制,封锁协议 1)一级封锁协议 事务T在修改数据D之前必须先对其加X锁,直到事务结束(包括正常结束COMMIT和非正常结束ROLLBACK)才释放,这称为一级封锁协议。一级封锁协议可防止丢失更新,并保证事务T是可恢复的。 2)二级封锁协议 二级封锁协议是指在一级封锁协议的基础上,当事务T在读取数据D之前必须先对其加S锁,读完后即可释放S锁。二级封锁协议除防止了丢失更新,还可进一步防止读“脏”数据。由于读完后即可释放S锁,所以

12、不能保证可重复读。,人民邮电出版社,26,11.3 数据库的并发性控制,封锁协议 3)三级封锁协议 三级封锁协议是指一级封锁协议加上事务T在读取数据R之前必须先对其加S锁,直到事务结束才释放。三级封锁协议除防止了丢失更新和不读“脏”数据外,还进一步防止了不可重复读。 活锁和死锁,人民邮电出版社,27,11.3 数据库的并发性控制,Oracle系统的并发控制技术 实现Oracle的并发控制需要依赖于封锁机制。按照锁所分配的资源来划分,Oracle中的锁共有3种:DML锁(数据锁);DDL锁(数据字典锁);Internal locks and latches。,人民邮电出版社,28,11.4 数据

13、库的备份与恢复技术,任何数据库在长期使用过程中,都会存在一定的安全隐患,例如,由于数据库的物理结构被破坏,或由于机器硬件故障而遭到破坏。对于数据库管理员而言,这不能仅寄希望于计算机操作系统的安全运行,而要建立一整套的数据库备份与恢复机制。当任何人为的或自然灾难一旦出现,导致数据库崩溃、物理介质损坏等故障时,管理员就可以及时恢复系统中重要的数据,尽可能地避免数据损失,使用数据库正常运行。,人民邮电出版社,29,11.4 数据库的备份与恢复技术,丢失数据可以分为物理丢失和逻辑丢失。物理丢失是指操作系统的数据库组件丢失,例如,数据文件、控制文件、重做日志以及归档日志。引起物理数据丢失的原因可能是磁盘

14、驱动毁损,也可能是有人意外删除了一个数据文件或者修改关键数据库文件所造成的配置变化。逻辑丢失就是例如表、索引和表记录等数据库组件的丢失。引起逻辑数据丢失的原因可能是有人意外删除了不该删除的表、应用出错或者在DELETE语句中使用不适当的WHERE子句。毫无疑问,Oracle能够实现物理数据备份与逻辑数据备份。,人民邮电出版社,30,11.4 数据库的备份与恢复技术,RMAN概述 RMAN是随Oracle服务器软件一同安装的Oracle工具软件,它专门用于对数据库进行备份、修复和恢复操作。如果使用RMAN作为数据库备份与恢复工具,那么所有的备份和恢复操作都可以在RMAN环境下使用RMAN命令完成

15、,这样可以减少DBA在对数据库进行备份与恢复时产生的错误,提高备份与恢复的效率。,人民邮电出版社,31,11.4 数据库的备份与恢复技术,RMAN组件 RMAN是执行备份和恢复操作的客户应用程序。最简单的RMAN只包括两个组件:RMAN命令执行器与目标数据库。DBA就是在RMAN命令执行器中执行备份与恢复操作,然后由RMAN命令执行器对目标数据库进行相应的操作。,人民邮电出版社,32,11.4 数据库的备份与恢复技术,RMAN通道 RMAN具有一套配置参数,这类似于操作系统中的环境变量。这些默认配置将被自动应用于所有的RMAN会话,通过SHOW ALL命令可以查看当前所有的默认配置。DBA可以

16、根据自己的需求,使用CONFIGURE命令对RMAN进行配置。与此相反,如果要将某项配置设置为默认值,则可以在CONFIGURE命令中指定CLEAR关键字。,人民邮电出版社,33,11.4 数据库的备份与恢复技术,RMAN命令 RMAN的操作命令非常简单,也无特定的技巧,只需要理解各个命令的含义,就可以灵活使用。在本节中,将介绍一些RMAN中的基本命令,以及如何利用这些基本命令来完成各种操作。,人民邮电出版社,34,11.4 数据库的备份与恢复技术,使用RMAN备份数据库 使用RMAN备份为数据库管理员提供了更灵活的备份选项。在使用RMAN进行备份时,DBA可以根据需要进行完全备份(Full Backup)与增量备份(Incremental Backup)、联机备份和脱机备份。 RMAN备份策略 RMAN可以进行的两种类型的备份,即完全备份(Full Backup)和增量备份(Incremental Backup)。在进行完全备份时,RMAN会将数据文件中除空白的数据块之外,所有的数据块都复制到备份集中。需要注意,在RMAN中可以对数据文件进行完全备份或者增量备份,但是对控制文件和日志

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号