数据库安全综合概述
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据库系统安全
计算机安全技术
8. 4 数据库的备份与恢复
8.4.1 数据库的备份
数据库的备份大致有三种类型:冷备份、热备份和逻 辑备份。
1.冷备份
冷备份的思想是关闭数据库,在没有最终用户访问它 的情况下将其备份。
2.热备份
热备份是在数据库更新正在被写人的数据时进行。热 备份严重依赖日志文件。
3.逻辑备份
8.3.3 时标技术
时标技术是避免因出现数据不一致而造成的破坏数据 库的完整性的另外一种方法。由于它不是采用封锁的方法, 所以不会产生死锁的问题。
数据库系统安全
计算机安全技术
8.3 死锁、活锁和可串行化
在事务运行时,它的启动时间就是事务的"时标"。如 果两个事务T1 、T2 的时标分别为t1与t2,若t1>t2 则称 t1 是年轻的事务,t2是年长的事务。
8.1.2 数据库的特性
面对数据库的安全威胁,采取有效的安全措施分为两 个方面,即支持数据库的操作系统和同属于系统软件的 DBMS。后者的安全使用特性有以下几点要求:
1.多用户 2.高可用性 3.频繁的更新 4.大文件
数据库系统安全
计算机安全技术
8.1 数据库安全概述
8.1.3 数据库安全系统特性
数据库解决死锁问题的主要方法有以下几种:
(1)求每个事务一次就将所有要使用的数据全部加锁,否则 就不能执行。
(2)预先规定一个封锁顺序;所有的事务都必须按这个顺序 对数据执行封锁。
(3)不预防死锁的发生,而是让系统用某种方法判断当前系 统中是否有死锁现象。
数据库系统安全
计算机安全技术
8.3 死锁、活锁和可串行化
时标和封锁技术之间的基本区别是:封锁是使一组事 务的并发执行(即交叉执行)同步,使它等价于这些事务 的某一串行操作;时标法也是使一组事务的交叉执行同步, 但是它等价于这些事务的一个特定的串行执行,即由时标 的时序所确定的一个执行。
如果发生冲突;则通过撤消并重新启动一个事务解决。 如果事务重新启动;则赋予新的时标。
1. 数据独立性
(1)物理独立性 (2)逻辑独立性
2. 数据安全性
比较完整的数据库对数据安全性采取以下措施:
(1)将数据库中需要保护的部分与其他部分相隔离;
(2)使用授权规则。这是数据库系统经常使用的一 个办法,数据库给用户ID号和口令、权限。当用户用此ID 号和口令登录后,就会获得相应的权限。不同的用户或操 作会有不同的权限。比如,对于一个表,某人有修改权, 而其他人只有查询权;
计算机安全技术
8.2 数据库的数据保护
3.数据库并发控制
目前,多数数据库都是大型多用户数据库,所以库中 的数据资源必须是共享的。为了充分利用数据库资源,应 允许多个用户并行操作的数据库。数据库必须能对这种并 行操作进行控制,即并发控制,以保证数据在不同的用户 使用时的一致性。
并发控制的主要方法是封锁技术(Locking)。当事 务1修改数据时,将数据封锁,这样在事务1读取和修改数 据时,其它的事务就不能对数据进行读取和修改,直到事 务1解除封锁。
(3)将数据加密,以密码的形式存于数据库内。
数据库系统安全
计算机安全技术
8.1 数据库安全概述
3. 数据的完整性
数据完整性这一术语用来泛指与损坏和丢失相对的数 据状态。它通常表明数据在可靠性与准确性上是可信赖的, 同时也意味着数据有可能是无效的或不完整的。数据完整 性包括数据的正确性、有效性和一致性。
数据库系统安全
计算机安全技术
数据库安全概述
8.1.1 简介
数据库,形象上讲就是若干数据的集合体。这些数据 存在于计算机的外存储器上,而且不是杂乱无章地排列的。 数据库数据量庞大、用户访问频繁,有些数据具有保密性; 因此数据库要由数据库管理系统(DBMS )进行科学地组 织和管理,以确保数据库的安全性和完整性。
8.3.2 可串行化
并行事务执行时,系统的调度是随机的,因此,需要 一个尺度去判断事务执行的正确性。当并行操作的结果与 串行操作的结果相同时,我们则认为这个并行事务处理结 果是正确的。这个并行操作调度称为可串行化调度。
可串行化是并行事务正确性的准则。这个准则规定; 一个给定的交叉调度,当且仅当它是可串行化的,才认为 是正确的。
ห้องสมุดไป่ตู้
计算机安全技术
8.2 数据库的数据保护
5. 故障恢复
当数据库系统运行时出现物理或逻辑上的错误时, 如何尽快将它恢复正常,这就是数据库系统的故障恢复功 能。
8.2.1 数据库的故障类型
这里数据库的故障是指从保护安全的角度出发,数据 库系统中会发生的各种故障。这些故障主要包括:事务内 部的故障、系统范围内的故障、介质故障、计算机病毒与 黑客等。
8.2.2数据库的数据保护
数据库保护主要是指数据库的安全性、完整性、并发
数据库系统安全
计算机安全技术
8.2 数据库的数据保护
1 .数据库的安全性
2.数据的完整性
数据的完整性主要是指防止数据库中存在不符合语义 的数据,防止错误信息的输入和输出。数据完整性包括数 据的正确性、有效性和一致性。
数据库系统安全
逻辑备份使用软件技术从数据库提取数据并将结果写 人一个输出文件。
数据库系统安全
计算机安全技术
8. 4 数据库的备份与恢复
8.4.2 制定备份的策略
备份不是实时的,备份应该什么时候做,用什么方式 做,这主要取决于数据库的不同规模和不同的用途。备份 主要考虑以下的几个因素:
(1)备份周期,是按月、周、天、还是小时;
4. 并发控制
如果数据库应用要实现多用户共享数据,就可能在同 一时刻多个用户要存取数据,这种事件叫做并发事件。当 一个用户取出数据进行修改,在修改存人数据库之前如有 其他用户再取此数据,那么读出的数据就是不正确的。这 时就需要对这种并发操作施行控制,排除和避免这种错误 的发生;保证数据的正确性。
数据库系统安全
(2)使用冷备份还是热备份;
(3)使用增量备份还是全部备份,或者两者同时使用; (增量备份只备份自上次备份后的所有更新的数据。全部 备份是完整备份数据库中所有数据。)
数据库系统安全
计算机安全技术
8.3 死锁、活锁和可串行化
8.3.l 死锁与活锁
封锁的控制方法有可能会引起死锁和活锁的问题。
某个事务永远处于等待状态称为活锁
解决活锁的最常见方法是对事务进行排队,按“先入先出”的 原则进行调度。
两个或两个以上的事务永远无法结束;彼此都在等待对方解除 封锁,结果造成事务永远等待,这种封锁叫做死锁。