信息安全技术讲义_第1页
信息安全技术讲义_第2页
信息安全技术讲义_第3页
信息安全技术讲义_第4页
信息安全技术讲义_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第四篇信息安全技术第8章数据库系统安全技术

本章学习目标数据库系统的安全框架和安全性要求数据库的死锁、活锁和可串行化数据库的备份与恢复方法攻击数据库的常用方法Oracle数据库的安全管理引言数据库系统担负着存储和管理数据信息的任务,是计算机应用技术的一个重要分支,从20世纪70年代后期开始发展,虽然起步较晚,但近30年来已经形成为一门新兴学科。数据库应用涉及面很广,几乎所有领域都要用到数据库系统。因而,如何保证和加强其安全性和保密性,已成为目前迫切需要解决的热门课题。8.1数据库系统安全概述

8.1.1数据库系统的组成数据库系统的组成数据库:按一定的规则和方式存取数据的集合体。数据库管理系统(DBMS):专门负责数据库管理和维护的计算机软件系统。DBMS的功能有正确的编译功能,能正确执行规定的操作。能正确执行数据库命令。能保证数据的安全性、完整性,能抵御一定程度的物理破坏,能维护和提交数据库内容。能识别用户、分配授权和进行访问控制,包括身份识别和验证。顺利执行数据库访问,保证网络通信功能。

DBA的职责决定数据库的信息内容和结构;决定数据库的存储结构和存取策略;定义数据的安全性要求和完整性约束条件;确保数据库的安全性和完整性;监督和控制数据库的使用和运行。数据库系统安全的含义数据库系统运行安全数据库系统运行安全包括法律、政策的保护,如用户是否有合法权利,政策是否允许等;物理控制安全,如机房加锁等;硬件运行安全;操作系统安全,如数据文件是否保护等;灾害、故障恢复;避免和解除死锁;防止电磁信息泄漏。数据库系统信息安全数据库系统信息安全包括用户口令鉴别,用户存取权限控制,数据存取权限、方式控制,审计跟踪,数据加密。8.1.3数据库系统的安全性要求安全问题注释物理上的数据库完整性预防数据库数据物理方面的问题。如掉电,以及当被灾祸破坏后能重构数据库逻辑上的数据库完整性保持数据的结构。如一个字段的值的修改不至于影响其他字段元素的完整性包含在每个元素中的数据是准确的可审计性能够追踪到谁访问修改过数据的元素访问控制允许用户只访问被批准的数据,以及限制不同的用户有不同的访问模式,如读或写用户认证确保每个用户被正确地识别,既便于审计跟踪,也为了限制对特定的数据进行访问可获(用)性用户一般可以访问数据库以及所有被批准访问的数据数据库管理系统对完整性的要求数据库的完整性数据库的完整性是DBMS和计算系统管理者的责任。整个数据库的一种保护形式是对系统上的所有文件做周期性备份。元素的完整性数据库元素的完整性是指它们的正确性和准确性。字段检查通过访问控制来维护数据库的完整性和一致性维护数据库的更改日志。可审计性数据库管理系统对保密性和可获性的要求访问控制数据库常常根据用户访问权限进行逻辑分割。数据库管理系统(DBMS)必须实施访问控制策略,指定哪些数据允许被访问或者禁止访问;指定允许谁访问哪些数据,这些数据可以是字段或记录,或者甚至是元素。对数据库的访问控制和操作系统的访问控制有根本区别。通过推理访问数据可能不需要有对安全目标的直接访问权。操作系统和数据库的访问控制目标在规模上是不同的。用户认证DBMS在操作系统之外作为一个应用程序被运行,这意味着它没有互操作系统的可信赖路径,因此必须怀疑它所收到的任何数据,包括用户认证。可获性DBMS的可获性。问题之一来自于对两个用户请求同一记录的仲裁;问题之二是为了避免暴露被保护的数据而需要扣发某些非保护的数据8.1.4数据库系统的安全框架数据库系统的安全除依赖自身内部的安全机制外,还与外部网络环境、应用环境、从业人员素质等因素息息相关。因此,从广义上讲,数据库系统的安全框架可以划分为三个层次,分别为:网络系统层次、操作系统层次、数据库管理系统层次。网络系统层次的安全网络系统是数据库应用的外部环境和基础,数据库系统要发挥其强大作用离不开网络系统的支持,数据库系统的用户(如异地用户、分布式用户)也要通过网络才能访问数据库的数据。所以,数据库的安全首先依赖于网络系统,网络系统的安全是数据库安全的第一道屏障,外部入侵首先就是从入侵网络系统开始的。网络系统层次的安全防范技术有很多种,主要有防火墙、入侵检测技术等。操作系统层次次的安全操作系统是大大型数据库系系统的运行平平台,为数据据库系统提供供一定程度的的安全保护。。目前操作系系统平台大多多数集中在NT和UNIX,安全级别通通常为C1、C2级。主要安全全技术有操作作系统安全策策略、安全管管理策略、数数据安全等方方面。其中操作系统统安全策略用用于配置本地地计算机的安安全设置,包包括密码策略略、账户锁定定策略、审核核策略、IP安全策略、用用户权利指派派、加密数据据的恢复代理理及其他安全全选项,具体体可以体现在在用户账户、、口令、访问问权限、审计计等方面。安全管理策略略是指网络管管理员对系统统实施安全管管理所采取的的方法及策略略。针对不同同的操作系统统、网络环境境,需要采取取的安全管理理策略一般也也不尽相同,,其核心是保保证服务器的的安全和分配配好各类用户户的权限。数据安全主要要包括:数据据加密技术、、数据备份、、数据存储的的安全性、数数据传输的安安全性等。可可以采用的技技术很多,主主要有Kerberos认证,IPSec,SSL,TLS,VPN等技术。数据库管理系系统层次的安安全当前面两个层层次已经被突突破的情况下下,数据库管管理系统在一一定程度上能能保障数据库库数据的安全全。目前市场场上流行的关关系数据库管管理系统的安安全性功能都都很弱,所以以,数据库的的安全不能得得到保障,这这就要求数据据库管理系统统必须有一套套强有力的安安全机制。数据库管理系系统本身提供供的用户名/口令识别,视视图、使用权权限控制,审审计等管理措措施,大型数数据库管理系系统Oracle,Sybase,Ingress等均有此功能能。应用程序设置置的控制管理理,如使用较较普遍的FoxBASE,FoxPro等。作为数据据库用户,最最关心自身数数据资料的安安全,特别是是用户的查询询权限问题。。数据库系统的的安全特性1.数据独立性性数据独立于应应用程序之外外。理论上数数据库系统的的数据独立性性分为两种::物理独立性。。数据库的物物理结构的变变化不影响数数据库的应用用结构,从而而也就不影响响其相应的应应用程序。这这里的物理结结构是指数据据库的物理位位置、物理设设备等。逻辑独立性。。数据库逻辑辑结构的变化化不会影响用用户的应用程程序。数据类类型的修改、、增加、改变变各表之间的的联系都不会会导致应用程程序的修改。。这两种数据独独立性都要靠靠DBMS来实现。到目目前为止,物物理独立性已已经能基本实实现,但逻辑辑独立性实现现起来非常困困难,数据结结构一旦发生生变化,一般般情况下,相相应的应用程程序都要作或或多或少的修修改。追求这这一目标也成成为数据库系系统结构复杂杂的一个重要要原因。2.数据安全性性一个数据库能能否防止无关关人员得到他他不应该知道道的数据,是是数据库是否否实用的一个个重要指标。。如果一个数数据库对所有有的人都公开开数据,那么么这个数据库库就不是一个个可靠的数据据库。完整的数据库库对数据安全全性采取了以以下措施:将数据库中需需要保护的部部分与其他部部分相隔离。。使用授权规则则。这是数据据库系统经常常使用的一个个办法,数据据库给用户ID号和口令、权权限。当用户户用此ID号和口令登录录后,就会获获得相应的权权限。不同的的用户或操作作会有不同的的权限。比如如,对于一个个表,某人有有修改权,而而其他人只有有查询权。将数据加密,,以密码的形形式存于数据据库内。3.数据的完整整性数据完整性这这一术语用来来泛指与损坏坏和丢失相对对的数据状态态。它通常表表明数据在可可靠性与准确确性上是可信信赖的,同时时也意味着数数据有可能是是无效的或不不完整的。数数据完整性包包括数据的正正确性、有效效性和一致性性。正确性。数据据在输入时要要保证其输入入值与定义这这个表时相应应的域的类型型一致。如表表中的某个字字段为数值型型,那么它只只能允许用户户输入数值型型的数据,否否则不能保证证数据库的正正确性。有效性。在保保证数据正确确的前提下,,系统还要约约束数据的有有效性。如对对于月份字段段,若输入值值为17,那么这个数数据就是无效效数据,这种种无效输入也也称为“垃圾圾输入”。当当然,若数据据库输出的数数据是无效的的,相应地称称为“垃圾输输出”。一致性。当不不同的用户使使用数据库,,应该保证他他们取出的数数据必须一致致。因为数据库系系统对数据的的使用是集中中控制的,因因此数据的完完整性控制还还是比较容易易实现的。4.并发控制如果数据库应应用要实现多多用户共享数数据,就可能能在同一时刻刻多个用户要要存取数据,,这种事件叫叫做并发事件件。当一个用用户取出数据据进行修改,,修改存入数数据库之前如如有其他用户户再取此数据据,那么读出出的数据就是是不正确的。。这时就需要要对这种并发发操作施行控控制,排除和和避免这种错错误的发生,,保证数据的的正确性。5.故障恢复当数据库系统统运行时出现现物理或逻辑辑上的错误时时,如何尽快快将它恢复正正常,这就是是数据库系统统的故障恢复复功能。数据库的故障障主要包括::事务内部的故故障系统范围内的的故障介质故障计算机病毒与与黑客等。事务内部的故故障事务(Transaction)是指并发控控制的单位,,它是一个操操作序列。在在这个序列中中的所有操作作只有两种行行为,要么全全都执行,要要么全都不执执行。因此,,事务是一个个不可分割的的单位。事务务用COMMIT语句提交给数数据库,用ROLLBACK语句撤销已经经完成的操作作。事务内部的故故障多发生于于数据的不一一致性,主要要表现为以下下几种:丢失修改。两两个事务T1和T2读入同一数据据,T2提交的结果破破坏了T1提交的结果,,T1对数据库的修修改丢失,造造成数据库中中数据错误。。不能重复读。。事务T1读取某一数据据,事务T2读取并修改了了同一数据,,T1为了对读取值值进行校对再再读取此数据据,便得到了了不同的结果果。例如,T1读取取数数据据B=200,T2也读读取取B并把把它它修修改改为为300,那那么么T1再读读取取数数据据B得到到300,与与第第一一次次读读取取的的数数值值不不一一致致。。“脏脏””数数据据的的读读出出,,即即不不正正确确数数据据的的读读出出。。T1修改改某某一一数数据据,,T2读取取同同一一数数据据,,但但T1由于于某某种种原原因因被被撤撤销销,,则则T2读到到的的数数据据为为““脏脏””数数据据。。例例如如,,T1读取取数数据据B值100修改改为为200,则则T2读取取B值为为200,但但由由于于事事务务T1被撤撤销销,,其其所所做做的的修修改改宣宣布布无无效效,,B值恢恢复复为为100,而而T2读到到的的数数据据是是200,就就与与数数据据库库内内容容不不一一致致了了。。系统统范范围围内内的的故故障障数据据库库系系统统故故障障又又称称为为数数据据库库软软故故障障,,是是指指系系统统突突然然停停止止运运行行时时造造成成的的数数据据库库故故障障。。如如CPU故障障、、突突然然断断电电、、操操作作系系统统故故障障,,这这些些故故障障不不会会破破坏坏数数据据库库,,但但会会影影响响正正在在运运行行的的所所有有事事务务,,因因为为数数据据库库缓缓冲冲区区的的内内容容会会全全部部丢丢失失,,运运行行的的事事务务非非正正常常终终止止,,从从而而造造成成数数据据库库处处于于一一种种不不正正确确的的状状态态。。这这种种故故障障对对于于一一个个需需要要不不停停运运行行的的数数据据库库来来讲讲,,损损失失是是不不可可估估量量的的。。恢复复子子系系统统必必须须在在系系统统重重新新启启动动时时让让所所有有非非正正常常终终止止事事务务ROLLBACK,把把数数据据库库恢恢复复到到正正确确的的状状态态。。介质质故故障障。。介质质故故障障又又称称硬硬故故障障,,主主要要指指外外存存故故障障,,如如磁磁盘盘磁磁头头碰碰撞撞,,瞬瞬时时的的强强磁磁场场干干扰扰。。这这类类故故障障会会破破坏坏数数据据库库或或部部分分数数据据库库,,并并影影响响正正在在使使用用数数据据库库的的所所有有事事务务。。所所以以,,这这类类故故障障的的破破坏坏性性很很大大。。计算算机机病病毒毒与与黑黑客客。。计算算机机病病毒毒的的内内容容详详见见第第8章。。病病毒毒发发作作后后造造成成的的数数据据库库数数据据的的损损坏坏必必须须要要求求操操作作者者自自己己去去恢恢复复。。对于于黑黑客客,,更更需需要要计计算算机机数数据据库库加加强强安安全全管管理理。。这这种种安安全全管管理理对对于于那那些些机机密密性性的的数数据据库库显显得得尤尤为为重重要要。。8.2数据据库库的的保保护护随着着计计算算机机越越来来越越深深入入的的使使用用,,一一些些大大型型数数据据库库中中存存储储着着大大量量保保密密性性的的信信息息,,如如国国防防、、金金融融、、军军事事等等方方面面。。若若这这些些数数据据库库中中的的数数据据遭遭到到破破坏坏,,造造成成的的损损失失难难以以估估量量。。所所以以数数据据库库的的保保护护是是数数据据库库运运行行过过程程中中一一个个不不可可忽忽视视的的方方面面。。数数据据库库系系统统必必须须建建立立自自己己的的保保护护机机制制,,提提供供数数据据保保护护功功能能。。数据据库库的的保保护护主主要要包包含含数数据据库库的的安安全全性性、、完完整整性性、、并并发发控控制制和和数数据据库库恢恢复复等等内内容容。。数据据库库的的安安全全性性安全全性性问问题题是是所所有有计计算算机机系系统统共共有有的的问问题题,,并并不不是是数数据据库库系系统统特特有有的的,,但但由由于于数数据据库库系系统统数数据据量量庞庞大大且且多多用用户户存存取取,,安安全全性性问问题题就就显显得得尤尤其其突突出出。。由由于于安安全全性性问问题题有有系系统统问问题题与与人人为为问问题题,,所所以以一一方方面面用用户户可可以以从从法法律律、、政政策策、、伦伦理理、、道道德德等等方方面面控控制制约约束束人人们们对对数数据据库库的的安安全全使使用用;;另另一一方方面面还还可可以以从从物物理理设设备备、、操操作作系系统统等等方方面面加加强强保保护护,,保保证证数数据据库库的的安安全全;;另另外外,,也也可可以以从从数数据据库库本本身身实实现现数数据据库库的的安安全全性性保保护护。。数据据库库安安全全控控制制模模型型用户户标标识识和和鉴鉴定定通过过核核对对用用户户的的名名字字或或身身份份((ID),,决决定定该该用用户户对对系系统统的的使使用用权权访问问控控制制给不不同同的的用用户户对对象象授授予予不不同同的的操操作作权权力力数据据分分级级为每每一一数数据据对对象象((文文件件、、记记录录或或字字段段等等))赋赋予予一一定定的的保保密密级级数据据库库加加密密对数数据据库库文文件件进进行行加加密密处处理理是是解解决决数数据据安安全全问问题题的的最最有有效效办办法法用户DBMSOSDB用户标识和鉴定存取控制操作系统安全保护密码存储1.用用户户标标识识和和鉴鉴定定通过过核核对对用用户户的的名名字字或或身身份份((ID),,决决定定该该用用户户对对系系统统的的使使用用权权。。数数据据库库系系统统不不允允许许一一个个未未经经授授权权的的用用户户对对数数据据库库进进行行操操作作。。用户户用用身身份份和和口口令令登登录录时时,,系系统统用用一一张张用用户户口口令令表表去去验验证证用用户户身身份份。。表表中中只只有有两两个个字字段段::用用户户名名和和口口令令。。并并且且用用户户输输入入的的口口令令并并不不显显示示在在屏屏幕幕上上,,而而只只是是以以某某种种符符号号代代替替,,如如““*””号号。。系系统统根根据据用用户户的的输输入入验验证证此此用用户户是是否否为为合合法法用用户户。。这这种种方方法法简简便便易易行行,,但但保保密密性性不不是是很很高高。。另外外一一种种标标识识鉴鉴定定的的方方法法是是用用户户先先标标识识自自己己,,系系统统提提供供相相应应的的口口令令表表,,这这个个口口令令表表不不是是简简单单地地与与用用户户输输入入的的口口令令比比较较,,而而是是系系统统给给出出一一个个随随机机数数,,用用户户按按照照某某个个特特定定的的过过程程或或函函数数进进行行计计算算后后给给出出结结果果值值,,系系统统同同样样按按照照这这个个过过程程或或函函数数对对随随机机数数进进行行计计算算,,如如果果与与用用户户输输入入的的相相等等则则证证明明此此用用户户为为合合法法用用户户,,可可以以再再接接着着为为用用户户分分配配权权限限;;否否则则,,系系统统认认为为此此用用户户根根本本不不是是合合法法用用户户,,拒拒绝绝进进入入数数据据库库系系统统。。2.访访问问控控制制数据据库库系系统统中中,,不不同同的的用用户户对对象象有有不不同同的的操操作作权权力力。。对对数数据据库库的的操操作作权权限限一一般般包包括括查查询询权权、、记记录录的的修修改改权权、、索索引引的的建建立立权权、、数数据据库库的的创创建建权权。。把把这这些些权权力力按按一一定定的的规规则则授授予予用用户户,,以以保保证证用用户户的的操操作作在在自自己己的的权权限限范范围围之之内内。。授授权权规规则则可可以以见见下下表表。。数据库的授权权由SQL的GRANT(授权)和REVOKE(回收)来完完成。关系S关系S关系SC用户1NONESELECTALL用户2SELECTUPDATESELECTDELETEUPDATE用户3NONENONESELECT用户4NONEINSERTSELECTNONE用户5ALLNONENONE3.数据分级有些数据库系系统对安全性性的处理是把把数据分级。。这种方案为为每一数据对对象(文件、、记录或字段段等)赋予一一定的保密级级。如绝密级级、机密级、、秘密级和公公用级。对于于用户,也分分成类似的级级别。系统便便可规定两条条规则:用户I只能查看比他他级别低的或或同级的数据据。用户I只能修改和他他同级的数据据。在第2条中,用户I显然不能修改改比他级别高高的数据,但但同时也不能能修改比他级级别低的数据据,这是为了了管理上的方方便。如果用用户I要修改比他级级别低的数据据,那么首先先要降低用户户I的级别或提高高数据的级别别使得两者之之间的级别相相等才能进行行修改操作。。数据分级法是是一种独立于于数值的一种种简单的控制制方式,它的的优点是系统统能执行“信信息流控制””。4.数据库加密密(1)数据库加密的的特点:数据库密码系系统应采用公公开密钥。因因为数据库的的数据是共享享的,有权限限的用户随时时需要使用密密钥来查询数数据。因此,,数据库密码码系统宜采用用公开密钥的的加密方法。。多级密钥结构构。数据库关关系运算中参参与运算的最最小单位是字字段,查询路路径依次是库库名、表名、、记录名和字字段名。因此此,字段是最最小的加密单单位。也就是是说当查得一一个数据后,,该数据所在在的库名、表表名、记录名名、字段名都都应是知道的的。对应的库库名、表名、、记录名、字字段名都应该该具有自己的的子密钥,这这些子密钥组组成了一个能能够随时加、、解密的公开开密钥。加密体制。加密算法。4.数据库加密密(2)不同层次的加加密。可以在在三个不同层层次实现对数数据库数据的的加密,这三三个层次分别别是OS层、DBMS内核层和DBMS外层。在OS层加密。在OS层无法辨认数数据库文件中中的数据关系系,从而无法法产生合理的的密钥,对密密钥合理的管管理和使用也也很难。所以以,对大型数数据库来说,,在OS层对数据库文文件进行加密密很难实现。。在DBMS内核层实现加加密。这种加加密是指数据据在物理存取取之前完成加加/解密工作。这这种加密方式式的优点是加加密功能强,,并且加密功功能几乎不会会影响DBMS的功能,可以以实现加密功功能与数据库库管理系统之之间的无缝耦耦合。其缺点点是加密运算算在服务器端端进行,加重重了服务器的的负载,而且且DBMS和加密器之间间的接口需要要DBMS开发商的支持持。在DBMS外层实现加密密。比较实际际的做法是将将数据库加密密系统做成DBMS的一个外层工工具,根据加加密要求自动动完成对数据据库数据的加加/解密处理。采采用这种加密密方式进行加加密,加/解密运算可在在客户端进行行,它的优点点是不会加重重数据库服务务器的负载并并且可以实现现网上传输的的加密,对数数据库的最终终用户是完全全透明的,不不会影响数据据库服务器的的效率。缺点点是加密功能能会受到一些些限制,与数数据库管理系系统之间的耦耦合性稍差。。4.数据库加密密(3)数据库加密的的范围。经过过加密的数据据库须经得起起来自OS和DBMS的攻击;另一一方面,DBMS要完成对数据据库文件的管管理和使用,,必须具有能能够识别部分分数据的条件件。因此,只只能对数据库库中的数据进进行部分加密密。数据库中中不能加密的的部分包括::索引字段不能能加密。为了了达到迅速查查询的目的,,数据库文件件需要建立一一些索引,它它们的建立和和应用必须是是明文状态,,否则将失去去索引的作用用。关系运算的比比较字段不能能加密。DBMS要组织和完成成关系运算,,参与并、差差、积、商、、投影、选择择和连接等操操作的数据一一般都要经过过条件筛选,,这种“条件件”选择项必必须是明文,,否则DBMS将无法进行比比较筛选。表间的连接码码字段不能加加密。数据模模型规范化以以后,数据库库表之间存在在着密切的联联系,这种相相关性往往是是通过“外部部编码”联系系的,这些编编码若加密就就无法进行表表与表之间的的连接运算。。4.数据库加密密(4)数据库加密对对数据库管理理系统原有功功能的影响。。数据库数据据加密以后,,DBMS的一些功能将将无法使用。。无法实现对数数据制约因素素的定义。Sybase数据库系统的的规则定义了了数据之间的的制约因素。。数据一旦加加密,DBMS将无法实现这这一功能,而而且,值域的的定义也无法法进行。值得得注意的是,,数据库中的的每个字段的的类型、长度度都有具体的的限定。数据据加密时,数数值类型的数数据只能在数数值范围内加加密,日期和和字符类型的的数据也都只只能在各自的的类型范围内内加密,密文文长度也不能能超过字段限限定的长度,,否则DBMS将无法接受这这些加密过的的数据。密文数据的排排序、分组和和分类。select语句中的groupby,orderby,having子句分别完成成分组、排序序、分类等操操作。这些子子句的操作对对象如果是加加密数据,那那么解密后的的明文数据将将失去原语句句的分组、排排序、分类作作用,显然这这不是用户所所需要的。SQL语言中的内部部函数将对加加密数据失去去作用。DBMS对各种类型数数据均提供了了一些内部函函数,这些函函数不能直接接作用于加密密数据。DBMS的一些应用开开发工具的使使用受到限制制。数据库中数据据的完整性数据的完整性性主要是指::防止数据库库中存在不符符合语义的数数据,防止错错误信息的输输入和输出。。数据完整性性包括数据的的正确性、有有效性和一致致性。数据类型与值值域的约束关键字约束数据联系的约约束数据库并发控控制目前,多数数数据库都是大大型多用户数数据库,所以以数据库中的的数据资源必必须是共享的的。为了充分分利用数据库库资源,应允允许多个用户户并行操作数数据库。数据据库必须能对对这种并行操操作进行控制制,即并发控控制,以保证证数据在不同同的用户使用用时的一致性性。并发控制的主主要方法是封封锁技术(Locking)。当某事务务修改数据时时,将数据封封锁,这样在在这个事务读读取和修改数数据时,其他他的事务就不不能对数据进进行读取和修修改,直到此此事务解除封封锁。8.3死锁、活锁和和可串行化死锁与活锁某个事务永远远处于等待状状态称为活锁锁。解决活活锁的最常见见方法是对事事务进行排队队,按“先入入先出”的原原则进行调度度。两个或两个以以上的事务永永远无法结束束,彼此都在在等待对方解解除封锁,结结果造成事务务永远等待,,这种封锁叫叫死锁。造成事务永远远等待的死锁锁过程时刻事务1事务2t1读取数据A(对A进行封锁)t2读取数据B(对B进行封锁)t3读取数据B(等待)t4读取数据A(等待)解决死锁问题题的主要方法法每个事务一次次就将所有要要使用的数据据全部加锁,,否则就不能能执行。预先规定一个个封锁顺序,,所有的事务务都必须按这这个顺序对数数据执行封锁锁。不预防死锁的的发生,而是是让系统用某某种方法判断断当前系统中中是否有死锁锁现象。如果果发生死锁再再设法解除,,使事务再继继续运行。可串行化并行事务执行行时,系统的的调度是随机机的,因此,,需要一个尺尺度去判断事事务执行的正正确性。当并并行操作的结结果与串行操操作的结果相相同时,我们们就认为这个个并行事务处处理结果是正正确的。这个个并行操作调调度称为可串串行化调度。。可串行化是并并行事务正确确性的准则。。这个准则规规定,一个给给定的交叉调调度,当且仅仅当它是可串串行化的,才才认为是正确确的。时标技术时标技术是避避免因出现数数据不一致而而造成的破坏坏数据库完整整性的另外一一种方法。由由于它不是采采用封锁的方方法,所以,,不会产生死死锁的问题。。时标和封锁技技术之间的基基本区别是::封锁是使一一组事务的并并发执行(即即交叉执行))同步,使它它等价于这些些事务的某一一串行操作;;时标法也是是使一组事务务的交叉执行行同步,但是是它等价于这这些事务的一一个特定的串串行执行,即即由时标的时时序所确定的的一个执行。。如果发生冲冲突,则通过过撤销并重新新启动一个事事务解决。如如果事务重新新启动,则赋赋予新的时标标。8.4攻击数据库的的常用方法突破Script的限制制对SQL口令令的突破利用多语句执执行漏洞SQLServer的的安装漏洞数据库的利用用数据库扫描工工具8.5数据库的恢复复恢复也称为重重载或重入,,是指当磁盘盘损坏或数据据库崩溃时,,通过将备份份的内容转储储或卸载,使使数据库返回回到原来状态态的过程数据库的恢复复办法周期性地(如如三天一次))对整个数据据库进行转储储,把它复制制到备份介质质中(如磁带带中),作为为后备副本,,以备恢复之之用。静态转储是指指转储期间不不允许对数据据库进行任何何存取、修改改活动动态转储是指指在存储期间间允许对数据据库进行存取取或修改对数据库的每每次修改,都都记下修改前前后的值,写写入“运行日日志”数集中中。它与后备备副本结合,,可有效地恢恢复数据库。。利用日志文件件恢复事务登记日志文件件(logging)事务运行过程程中,系统把把事务开始、、事务结束((包括COMMIT和ROLLBACK)以及对数据据库的插入、、删除、修改改等每一个操操作作为一个个log记录存放到日日志文件中。。登记的次序严严格按并行事事务执行的时时间次序。同同时遵循“先先写日志文件件”的规则。。事务恢复从头扫描日志志文件,找出出哪些事务在在故障发生时时已经结束,,哪些事务尚尚未结束。对尚未结束的的事务进行撤撤销(也称为为UNDO)处理,对已已经结束的事事务进行重做做(REDO)处理。总之,利用转转储和日志文文件可以有效效地恢复数据据库。当数据据库本身被破破坏时(如硬硬盘故障和病病毒破坏)可可重装转储的的后备副本,,然后运行日日志文件,执执行事务恢复复,这样就可可以重建数据据库;当数据据库本身没有有被破坏,但但内容已经不不可靠时(如如发生事务故故障和系统故故障)可利用用日志文件恢恢复事务,从从而使数据库库回到某一正正确状态。这这时不必重装装后备副本。。8.6Oracle数据库的安全全管理在Oracle多用户户数据据库系系统中中,安安全机机制做做下列列工作作:防止非非授权权的数数据库库存取取。防止非非授权权的对对模式式对象象的存存取。。控制磁磁盘使使用。。控制系系统资资源使使用。。审计用用户动动作。。Oracle用下列列机制制管理理数据据库的的安全全性::数据库库用户户和模模式。。权限。。角色。。存储设设置和和空间间份额额。资源限限制。。审计。。的安全全性策策略系统安安全性性策略略管理数数据库库用户户。用户身身份确确认。。操作系系统安安全性性。用户安安全性性策略略一般用用户的的安全全性终端用用户的的安全全性数据库库管理理者的的安全全性策策略保护作作为SYS和SYSTEM用户的的连接接。保护管管理者者与数数据库库的连连接。。使用角角色对对管理理者权权限进进行管管理。。应用程程序开开发者者的安安全性性策略略应用程程序开开发者者和他他们的的权限限。应用程程序开开发者者的环环境。。应用程程序开开发者者的空空间限限制。。的用户户管理理存取控控制Oracle使用多多种不不同的的机制制管理理数据据库安安全性性,最最主要要有两两种机机制::模式式和用用户。。用户的的存取取权利利受用用户安安全域域的设设置所所控制制。每一个个用户户有一一个安安全域域,它它是一一组特特性。。用户鉴鉴别为了防防止非非授权权的数数据库库用户户的使使用,,Oracle提供了了三种种确认认方法法:操操作系系统确确认、、Oracle数据库库确认认和网网络服服务确确认。。用户的的表空空间设设置和和定额额用户的的默认认表空空间。。用户的的临时时表空空间。。数据库库表空空间的的空间间使用用定额额。用户资资源限限制和和环境境文件件用户资资源限限制会话级级的用用户资资源限限制调用级级的用用户资资源限限制用户环环境文文件用户环环境文文件是是指定定资源源限制制的命命名集集,可可以赋赋给Oracle数据库库的有有效用用户。。利用用用户户环境境文件件可以以容易易地管管理资资源限限制。。权限和和角色色权限系统权权限::执行行一些些特殊殊动作作或者者在对对象类类型上上执行行一种种特殊殊动作作的权权利对象权权限::在指指定的的表、、视图图、序序列、、过程程、函函数或或包上上执行行特殊殊动作作的权权利角色一个角角色可可以授授予系系统权权限或或对象象权限限。一个角角色可可以授授权给给其他他角色色,但但不能能循环环授权权。任何角角色可可以授授权给给任何何数据据库用用户。。授权给给用户户的每每一个个角色色可以以是可可用的的也可可以是是不可可用的的。一一个用用户的的安全全域仅仅包含含当前前对该该用户户可用用的全全部角角色的的权限限。一个间间接授授权角角色对对用户户可以以显式式地使使其可可用或或不可可用。。在一一个数数据库库中,,每一一个角角色名名必须须惟一一。角角色名名与用用户不不同,,角色色不包包含在在任何何模式式中,,所以以建立立角色色的用用户被被删除除时不不影响响该角角色。。一般,,建立立角色色服务务有两两个目目的::为数数据库库应用用管理理权限限和为为用户户组管管理权权限。。相应应的角角色称称为应应用角角色和和用户户角色色。应用角角色是是授予予的运运行数数据库库应用用所需需的全全部权权限。。一个个应用用角色色可以以授权权给其其他角角色或或指定定用户户。一一个应应用可可以有有几种种不同同角色色,具具有不不同权权限组组的每每一个个角色色在使使用应应用时时可以以进行行不同同的数数据存存取。。注意::用户户角色色是为为具有有公开开权限限需求求的一一组数数据库库用户户建立立的。。当某某用户户角色色授权权给相相应的的用户户后,,其权权限管管理受受两方方面控控制::①应应用角角色本本身的的权限限;②②被授授权给给该用用户角角色的的权限限。Oracle用角色色进行行权限限管理理的优优点减少权权限管管理。。不要要显式式地将将同一一权限限组授授权给给几个个用户户,只只需将将这个个权限限组授授给角角色,,然后后将角角色授授权给给每一一个用用户。。动态权权限管管理。。如果果一组组权限限需要要改变变,只只需修修改角角色的的权限限,所所有该该角色色的全全部用用户的的安全全域将将自动动地反反映对对角色色所作作的修修改。。权限的的选择择可用用性。。授权权给用用户的的角色色可有有选择择地使使其可可用或或不可可用。。应用可可知性性。当当用户户经用用

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论