第四章数据库的安全性课件

PPT
  • 阅读 83 次
  • 下载 0 次
  • 页数 63 页
  • 大小 291.035 KB
  • 2022-12-05 上传
  • 收藏
  • 违规举报
  • © 版权认领
下载文档30.00 元 加入VIP免费下载
此文档由【小橙橙】提供上传,收益归文档提供者,本网站只提供存储服务。若此文档侵犯了您的版权,欢迎进行违规举报版权认领
第四章数据库的安全性课件
可在后台配置第一页与第二页中间广告代码
第四章数据库的安全性课件
可在后台配置第二页与第三页中间广告代码
第四章数据库的安全性课件
可在后台配置第三页与第四页中间广告代码
第四章数据库的安全性课件
第四章数据库的安全性课件
还剩10页未读,继续阅读
【这是免费文档,您可以免费阅读】
/ 63
  • 收藏
  • 违规举报
  • © 版权认领
下载文档30.00 元 加入VIP免费下载
文本内容

【文档说明】第四章数据库的安全性课件.ppt,共(63)页,291.035 KB,由小橙橙上传

转载请保留链接:https://www.ichengzhen.cn/view-92350.html

以下为本文档部分文字说明:

计算机安全性概论数据库安全性控制视图机制审计(Audit)数据加密统计安全性小结第四章数据库的安全性数据库的特点之一是DBMS提供统一的数据保护功能来保证数据的安全性可靠性和正确有效,数据库的数据保护主要包括数据的安全性和数据的完整性。这一章我们讨论数据的安全

性问题。4.1计算机安全性概述数据安全性是指保护数据库以防止不合法的使用造成的数据泄露、更改或破坏。数据库的安全性和计算机系统的安全性,包括操作系统、网络系统的安全性是紧密联系、相互支持的,因此在讨论数据库的安全性之前首

先讨论一下计算机系统安全性问题。4.1计算机安全性概述一、计算机系统的三类安全性问题计算机系统的安全性是指计算机系统建立和采取的各种安全保护措施,以保护计算机系统中的硬件、软件及数据,防止因偶然或恶意的原因使系统遭到破坏,数据遭到更改或泄露等。

计算机系统的安全性问题可分为技术安全类、管理安全类和政策法律类三类4.1计算机安全性概述技术安全性是指计算机系统中采用具有一定安全性的硬件、软件来实现对计算机系统及其所存数据的安全保护,当计算机系统受到无意或恶意的攻击时仍能保证系统正常运行,保证系统

能的数据不增加、不丢失、不泄露。管理安全性是指由于管理不善导致的计算机设备和数据介质的物理破坏、丢失等软硬件意外故障以及场地的意外事故等安全问题。政策法规则是指政府部门建立的有关计算机犯罪、数据安全保密的法

律道德准则和政策法规、法令。4.1计算机安全性概述二、计算机系统安全标准简介在计算机安全技术方面逐步建立了一套可信标准。在目前各国所引用或制定的一系列安全标准中,最有影响的是TCSEC和CC4.1计算机安全

性概述二、计算机系统安全标准简介TCSEC是1985年美国国防部(DoD)正式颁布的《DoD可信计算机系统评估标准》(TrustedComputerSystemEvaluationCriteria,简称TCSEC或DoD85)。制定这个标准的目的

主要有:⑴提供一种标准,使用户可以对其计算机系统内敏感信息安全操作的可信程度作评估。⑵给计算机行业的制造商提供一种可循的指导规则,使其产品能够更好地满足敏感应用的安全需求。4.1计算机安全性概述1991年4月美国NCSC(国家计算机安全中心)颁布了《可信计算机系统评估标准关于可信数据库系统的解释》

(TrustedDatabaseInterpretation,简称TDI),将TCSEC扩展到数据库管理系统。TDI中定义了数据库管理系统的设计与实现中需要满足和用以进行安全性级别评估的标准。TDI/TCSEC标准从以下四个方面描述安全性级

别划分标准:安全策略、责任、保证和文档。每个方面又细分为若干项。TDI/TCSEC将系统划分为四组(division)七个等级,依次是D;C(C1,C2);B(B1,B2,B3);A(A1)。安全级别之间具有一种偏序向下兼容的关

系,即较高安全性级别提供的安全保护要包含较低级别的所有保护要求,同时提供更多或更完善的保护能力。4.1计算机安全性概述D级最低级别。如DOS就是操作系统中安全标准为D的典型例子。它具有操作系统的基本功能,如文件系统,

进程调度等,但在安全方面几乎没有什么专门的机制来保障。C1级只提供非常初级的自主安全保护。能够实现对用户和数据的分离,进行自主存取控制(DAC),保护或限制用户权限的传播。C2级是安全产品的最低档次,提供受控的存取保护,即将C1级的DAC进一步细化,以个人身

份注册负责,并实施审计和资源隔离。如操作系统中Microsoft的Windows2000。数据库产品有Oracle公司的Oracle7等4.1计算机安全性概述B1级标记安全保护。对系统的数据加以标记,并对标记的主体和客体实施强制存取控制(MAC)以及审计等安全机制。

B1级能够较好地满足大型企业或一般政府部门对数据的安全需求,这一级别的产品才认为是真正意义上的安全产品。例如,操作系统方面有惠普公司的HP-UXBLSrelease9.0.9+等,数据库方面择优Qracle公司的TrustedOracl

e7、Sybase公司的SecureSQLSever11.0.6B2级结构化保护。建立形式化的安全策略模型并对系统内的所有主体和客体实施自主存取控制DAC和强制存取控制MAC。4.1计算机安全性概述B3级安全域。该级的TCB(可

信计算基础)必须满足访问监控器的要求,审计跟踪能力更强,并提供系统恢复过程。A1级验证设计,即提供B3级保护的同时给出系统的形式化设计说明和验证以确信各安全保护真正实现。4.1计算机安全性概述CC是在上述各评估

准则及具体实践基础上,通过相互总结和互补发展而来的。和早期的评估准则相比,CC只有结构开放、表达方式通用等特点。CC提出了目前国际上公认的表述信息技术安全性的结构,即把对信息产品的安全要求分为安全功能要求和安全

保证要求。安全功能要求用以规范产品和系统的安全行为,安全保证要求解决如何正确有效地实施这些功能。安全功能要求和安全保证要求都以“类-子类-组件”的结构表达,组件是安全要求的最小构件块。4.1计算机安全性概述CC的文本由三都分组成,三个部分相互依存,缺一不可。第一部分是“简介和一般模型”

。介绍CC中的有关术语、基本概念和一般模型以及与评估有关的一些框架,CC的附录部分主要介绍“保护轮廓”(ProtectionProfile,简称PP)和“安全目标”(SecurityTarget,简称ST)的基本内容。4.1计算机安全性概述第二都分是安全功能要求,列出

了一系列功能组件、子类和类。具体来说有11类,分别是安全审计(FAU)、通信(FCO)、密码支持(FCS)、用户数据保护(FDP)、标识和鉴别(FIA)、安全管理(FMT)、隐私(FPR)、TSF保护(FPT)、资源利用(FRU)、TOE访问(FTA)、可信路径和通信(FT

P)。这11大类分为66个子类,由135个组件构成。4.1计算机安全性概述第三部分是安全保证要求,列出了一系列保证组件、子类和类,包括7个类,分别是配置管理(ACM)、交付和运行(ADO)、开发(ADV)

、指导性文档(AGD)、生命周期支持(ALC)、测试(ATE)、脆弱性评定(AVA)。这7大类分为26个子类,由74个组件构成。另外,第三部分中根据系统对安全保证要求的支持情况提出了评估保证级(EvaluationAssuranceLevel,EAL),并定义了保护轮廓PP

和安全目标ST的评估准则,用于对PP和ST的评估。4.1计算机安全性概述这三部分的有机结合具体体现在PP和ST中,CC提出的安全功能要求和安全保证要求都可以在具体的PP和ST中进一步细化和扩展,这种开放式的结构更适应信息安全技

术的发展。CC的具体应用也是通过PP和ST这两种结构来实现的。4.1计算机安全性概述PP用于表达一类产品或系统的用户需求,是CC在某一领域的具体化。CC针对不同领域产品的评估,就体现在开发该类产品的PP上,例如,针对操作系统产品的PP(OSPP)、针对数据库产品的PP(DB

MSPP)等。CC并没有专门针对DBMS的解释。DBMSPP是CC在DBMS领域的具体化,相当于是对DBMS的解释。换句话说,CC的DBMSPP就相当于TCSEC的TDl。CC中规定了PP应包含的基本内容和格式,例如必须指明该PP符合哪一种评估保证级别,

目前国外已开发多种不同EAL的DBMSPP。ST是对特定的一种产品进行描述,参加CC评估的产品必须提供自己的ST。4.1计算机安全性概述PP的编制有助于提高安全保护的针对性和有效性。ST在PP的基础上,将安全要求进一步具体化,

解决安全要求的具体实现。通过PP和ST这两种结构,能够方便的将CC的安全性要求具体应用到信息产品的开发、生产、测试、评估和信息系统的集成、运行、评估、管理中。4.1计算机安全性概述除了PP和ST之外,还有一个重要的结构是包。包是组

件的特定组合,用来描述一组特定的安全功能和保证要求。评估保证级(EAL)是在CC第三部分中预先定义的由保证组件组成的保证包,每一保证包描述了一组特定的保证要求,对应着一种评估保证级别。从EALl至EAL7共分为七级,按保证程度逐渐增高。4.1计算机安全性概述目前有许多信息产品,操作系统如Win

dows2000、SunSolaris8等,数据库管理系统如Oracle9i、DB2V8.2、SybaseAdaptiveSeverEnterpriseVl2.5.2等,都已通过了CC的EAL4。4.2数据库安全性控制在一般计算机系统中

,安全措施是一级一级层层设置的。例如可以有如下的模型:用户DBMSOSDB用户标识和鉴别存取控制操作系统安全保护数据密码存储计算机系统的安全模型系统首先根据输入的用户标识进行用户身份鉴定,只有合法的用户才准许进入计算机系统。对已进入系统的用户,DBMS还要

进行存取控制,只允许用户执行合法操作。操作系统一级也会有自己的保护措施。数据还可以以密码形式存储到数据库中。4.2数据库安全性控制一、用户标识与鉴定(Identification&Authentication)用户

标识和鉴订是系统提供的最外层安全措施。其方法是由系统提供一定的方式让用户标识自己的名字或身份。每次用户要求进入系统时,由系统进行核对,通过鉴定后才提供机器使用权。二、存取控制数据库安全最重要的一点就是确保只授权给有资格的用户访问数据库的权限,同时令所有未

被授权的人员无法接近数据,这主要是通过数据库系统的存取控制机制实现。4.2数据库安全性控制存取控制机制主要包括两部分:1.定义用户权限,并将用户权限登记到数据字典中。用户权限是指不同用户对于不同的数据对象允许执行的操作权限。系

统必须提供适当的语言定义用户权限,这些定义经过编译后存放在数据字典中,被称作安全规则或授权规则。2.合法权限检查,每当用户发出存取数据库的操作请求后,DBMS查找数据字典,根据安全规则进行合法权限检查,若用户的操作请求超出了定义的权限,系统将拒绝执行此操作。用户权

限定义和合法权限检查机制一起组成了DBMS的安全子系统。4.2数据库安全性控制三、自主存取控制(DAC)方法在自主存取控制方法中,用户对于不同的数据对象有不同的存取权限,不同的用户对同一对象也有不同的权限,而且用户还可以将其拥有的存取权限转授予其他用户。因此自主存取控制非常灵活。

大型的数据库管理系统几乎都支持自主存取控制,在SQL中用GRANT语句和REVOKE语句来实现。用户权限是有两个要素组成的:数据对象和操作类型。定义一个用户的存取权限就是要定义这个用户可以在那些数据对象上进行哪些类型的操作。在数据库系统中,定义存

取权限称为授权(Authorization)。4.2数据库安全性控制在非关系系统中,用户只能对数据进行操作,存取控制的数据对象也仅限于数据本身。在关系系统中,DBA可以把建立、修改基本表的权限授予用户,用户获得此权限后可以建立和修改基本表

、索引、视图。因此关系系统中存取控制的数据对象不仅有数据本身,如表、属性列等,还有模式、外模式、内模式等数据字典中的内容。四授权(Authorization)与回收语句SQL语言用GRANT语句向用户授予操作权限,REVOKE语句收回授予的权限(一)、授权语句GRANT语句的一般格式

为:GRANT<权限>[,<权限>]...[ON<对象类型><对象名>]TO<用户>[,<用户>]...[WITHGRANTOPTION];其语义为:将对指定操作对象的指定操作权限授予指定的用户。4.2数据库安全性控制4.2数据库安全性控制接受权限的用户可以

是一个或多个具体用户,也可以是PUBLIC即全体用户。如果指定了WITHGRANTOPTION子句,则获得某种权限的用户还可以把这种权限再授予别的用户。如果没有指定WITHGRANTOPTION子句,则获得某种

权限的用户只能使用该权限,但不能传播该权限。例1把查询Student表权限授给用户U1GRANTSELECTONTABLEStudentTOU1例2把对Student表和Course表的全部权限授予用户U2和U3GRANTAL

LPRIVILIGESONTABLEStudent,CourseTOU2,U3例3把对表SC的查询权限授予所有用户GRANTSELECTONTABLESCTOPUBLIC4.2数据库安全性控制例4把查询Student表和修改学生学号的权限授给用户U4这里实际上要授予U4用户的是对基本表

Student的SELECT权限和对属性列Sno的UPDATE权限。授予关于属性列的权限时必须明确指出相应属性列名。完成本授权操作的SQL语句为:GRANTUPDATE(Sno),SELECTONTABLEStudentTOU44.2数据库安全性

控制例5把对表SC的INSERT权限授予U5用户,并允许他再将此权限授予其他用户GRANTINSERTONTABLESCTOU5WITHGRANTOPTION;执行此SQL语句后,U5不仅拥有了对表SC的INSERT权限,还可以传播此权限,即由U5用户发上述GRANT命令给其他用户。例如U5可

以将此权限授予U6:GRANTINSERTONTABLESCTOU6WITHGRANTOPTION同样,U6还可以将此权限授予U7:GRANTINSERTONTABLESCTOU7因为U6未给U7传播的权限,因此U7不能再传播此权限。4.2数据库安全性控制由上面的例子可以看到,GRA

NT语句可以一次向一个用户授权,如例1所示,这是最简单的一种授权操作;也可以一次向多个用户授权,如例2、例3等所示;还可以一次传播多个同类对象的权限,如例2所示;甚至一次可以完成对基本表、视图和属性列这些不同对象的授权

,如例4所示;4.2数据库安全性控制(二)、收权语句授予的权限可以由DBA或其他授权者用REVOKE语句收回,REVOKE语句的一般格式为:REVOKE<权限>[,<权限>]...[ON<对象类型><对象

名>]FROM<用户>[,<用户>]...;4.2数据库安全性控制例7把用户U4修改学生学号的权限收回REVOKEUPDATE(Sno)ONTABLEStudentFROMU4;例8收回所有用户对表SC的查询权限REVOKESELECTONTABLESCFROMPUBLIC;4.

2数据库安全性控制例9把用户U5对SC表的INSERT权限收回REVOKEINSERTONTABLESCFROMU5;在例5中,U5又将对SC表的INSERT权限授予了U6,而U6又将其授予了U7,执行此REVOKE语句后,D

BMS在收回U5对SC表的INSERT权限的同时,还会自动收回U6和U7对SC表的INSERT权限,即收回权限的操作会级联下去的。但如果U6或U7还从其他用户处获得对SC表的INSERT权限,则他们仍具有此权限,系统只收回直接或间接从U5处获得的权

限。4.2数据库安全性控制(三)、创建数据库模式的权限GRANT和REVOKE语句向用户授予或收回对数据的操作权限。对数据库模式的授权则由DBA在创建用户时实现。CREATEUSER语句一般格式如下:CREATEUSER<username>[WITH][DBA|R

ESOURCE|CONNECT]4.2数据库安全性控制对CREATEUSER语句说明如下:只有系统的超级用户才有权创建一个新的数据库用户。新创建的数据库用户有三种权限:CONNECT、RESOURCE和DBA。CREATEUSER命令中

如果没有指定创建的新用户的权限,默认该用户拥有CONNECT权限。拥有CONNECT权限的用户不能创建新用户,不能创建模式,也不能创建基本表;只能登录数据库。然后由DBA或其他用户授予他应有的权限,根据获得的授权情况他可

以对数据库对象进行权限范围内的操作。4.2数据库安全性控制对CREATEUSER语句说明如下:拥有RESOURCE权限的用户能创建基本表和视图,成为所创建对象的属主。但是不能创建模式,不能创建新的用户。数据库对象的属主可以使用GRANT语句把该对象上的存取

权限授予其他用户。拥有DBA权限的用户是系统中的超级用户,可以创建新的用户、创建模式、创建基本表和视图等;DBA拥有对所有数据库对象的存取权限,还可以把这些权限授予一般用户。4.2数据库安全性控制一个DBA用户可以拥有C

REATEUSER、CREATESCHEMA和CREATETABLE权限,一个RESOURCE用户可以拥有CREATETABLE权限。有关CREATESCHEMA和CREATETABLE的语句在第3章中已经讲解了。4.2数据库安全性控制五、数据库角色数据库角色是被命名的一组

与数据库操作相关的权限,角色是权限的集合。因此,可以为一组具有相同权限的用户创建一个角色,使用角色来管理数据库权限可以简化授权的过程。在SQL中首先用CREATEROLE语句创建角色,然后用GRANT语句给角色授权。4.2数据库安全性控制(一)、角色的创建创建角

色的SQL语句格式是CREATEROLE<角色名>刚刚创建的角色是空的,没有任何内容。可以用GRANT为角色授权。(二)、给角色授权GRANT<权限>[,<权限>]…ON<对象类型>对象名TO<角色>[,<角色>]…DBA和用户可以利用

GRANT语句将权限授予某一个或几个角色。4.2数据库安全性控制(三)、将一个角色授子其他的角色或用户GRANT<角色l>[,<角色2>]…TO<角色3>[,<用户1>]…[WITHADMINOPTION]该语句把角色授予某用户,或授予另一个角色。这样,一个角

色(例如角色3)所拥有的权限就是授予它的全部角色(例如角色1和角色2)所包含的权限的总和。授予者或者是角色的创建者,或者拥有在这个角色上的ADMINOPTION。如果指定了WITHADMINOPTION子句,则获得某种权限的角色或用户还可以把这种权限再授予其他的角色。一

个角色包含的权限包括直接授予这个角色的全部权限加上其他角色授予这个角色的全部权限。4.2数据库安全性控制(四)、角色权限的收回REVOKE<权限>[,<权限>]…ON<对象类型><对象名>FROM<角色>[,<角色>]…用户可以回收角色的权限,从而修改角色拥有的权限。RE

VOKE动作的执行者或者是角色的创建者,或者拥有在这个(些)角色上的ADMINOPTION。4.2数据库安全性控制[例11]通过角色来实现将一组权限授予一个用户。步骤如下1.首先创建一个角色Rl:CREATEROLERl2.然后使用GRANT语句,使角色

Rl拥有Student表的SELECT、UPDATE、INSERT权限GRANTSELECT,UPDATE,INSERTONTABLEStudentTOR13.将这个角色授予王平,张明,赵玲。使他们具有角色Rl所包含的全部权限GR

ANTRlTO王平,张明,赵玲4.当然,也可以一次性的通过R1来回收王平的这3个权限REVOKERlFROM王平4.2数据库安全性控制[例12]角色的权限修改GRANTDELETEONTABLEStudentTORl使角

色Rl在原来的基础上增加了Student表的DELETE权限。[例13]收回R1对Student表的查询权限REVOKESELECTONTABLEStudentFROMRl可以看出,通过角色的使用可以使自主授权的执行更

加灵活、方便。4.2数据库安全性控制4.2数据库安全性控制自主存取控制能够通过授权机制有效地控制其他用户对敏感数据的存取,但仍可能造成数据的“无意泄露”。造成这一问题的根本原因就在于这种机制仅仅通过对数据的存取权限来进行安全控制,而数据本身并无标记。要解决这一问题,就需要对系统控制下的所有主客体

实施强制存取策略。4.2数据库安全性控制六、强制存取控制(MAC)方法在强制存取方法中,每一个数据对象被标以一定的密级,每一个用户也被授予某一级别的许可证。对于任一对象,只有具有合法许可证的用户才可以存取。强制存取控制因此比较严格。MAC适用于那些对数据有严格而固定密级分类的部门,例如军事部门或政

府部门。在MAC中,DBMS所管理的全部实体被分为主体和客体两大类。主体是系统中的活动实体,既包括DBMS所管理的实际用户,也包括代表用户的各进程。客体是系统中被动的实体,是受主体操纵的,包括文件、基表、索引、视图等。4.2数据库安全性控制对于主体和客体,DBM

S为它们每个实例(值)指派一个敏感度标记(Label)。敏感度标记(Label)被分成若干级别,例如绝密(TopSecret)、机密(Secret)、可信(Confidential)、公开(Public

)等。主体的敏感度标记称为许可证级别(ClearanceLevel),客体的敏感度标记称为密级(ClassificationLevel)。MAC机制就是通过对比主体的Level和客体的Level,最终确定主体是否能够存取客体。4.2数据库安全性控制当某一用户(或某一主体)以标记Label注册入系

统时,系统要求他对任何客体的存取必须遵守如下规则:仅当主体的许可证级别大于或等于客体的密级时,该主体才能读取客体。仅当主体的许可证级别等于客体的密级时,该主体才能写相应客体。对于第二条规则在某些系统中规定:仅当主体的许可证级别小于或等于客体的密级时,该主体才能写相应客体,即用户可以为写入的数

据对象赋予高于自己的许可证级别的密级。这样一旦数据被写入,该用户自己也不能再读该数据对象了。4.2数据库安全性控制写规则禁止了拥有高许可证级别的主体更新密级低的数据对象。强制存取控制(MAC)是对数据本身进行密级标记,无论数据如何复制,标

记与数据是一个不可分的整体,只有复合密级标记要求的用户才可以操纵数据,从而提供了更高级别的安全性。4.2数据库安全性控制因较高安全性级别提供的安全保护要包含较低级别的所有保护要求,因此在实现MAC时要首先实现DAC,即D

AC与MAC共同构成DBMS的安全机制。系统首先进行DAC检查,对通过DAC检查的允许存取的数据对象再由系统自动进行MAC检查,只有通过MAC检查的数据对象方可存取。SQL语法分析&语义检查DAC检查MAC检查继续语义检查安全检查DAC+MAC安全检查示意图4.3视图机制进行存取权限控

制时可以为不同的用户定义不同的视图,把数据对象限制在一定的范围内,也就是说,通过视图机制把要保密的数据对无权存取的用户隐藏起来,从而自动地对数据提供一定程度的安全保护。例如只允许王平检索计算机系学生的信息,则可以先建立计算机系学生的

视图,然后把对视图的查询权限授予王平。CREATEVIEWCS_StudentASSELECT*FROMStudentWHERESdept=”CS”;GRANTSELECTONCS_StudentTo王平;4

.4审计(Audit)审计功能把用户对数据库的所有操作自动记录下来放入审计日志(AuditLog)中。DBA可以利用审计跟踪的信息,重现导致数据库现状的一系列事件,找出非法存取数据的人、时间和内容等。审计通常是很费时间和空间的,所以DBMS往往都将其作为可选特征,允许DBA根据应用对安全性要求

灵活地打开或关闭审计功能。审计功能一般主要用于安全性要求较高的部门。审计一般可分为用户级审计和系统级审计。用户审计是任何用户可设置的审计,主要是用户针对自己创建的数据库表或视图进行审计,记录所有用户对这些表或视图的一切成功和(或)不成功的

访问要求以及各种类型的SQL操作。4.4审计(Audit)系统级审计只能由DBA设置,用以监测成功或失败的登录要求、监测GRANT和REVOKE操作以及其他数据库级权限下的操作。AUDIT语句用来设置审计功能,NOAUDlT语

句取消审计功能。[例15]对修改SC表结构或修改SC表数据的操作进行审计。AUDITALTER,UPDATEONSC[例16]取消对SC表的一切审计。NOAUDITALTER,UPDATEONSC审计设置以及审计

内容一般都存放在数据字典中。必须把审计开关打开(即把系统参数audit_trail设为true),才可以在系统表SYS_AUDITTRAIL中查看审计信息。4.5数据加密对于高度敏感数据,例如财务数据、军事数据、国家机

密,除以上安全性措施外,还可以采用数据加密技术。数据加密是防止数据库中数据在存取和传输中失密的有效手段。加密的基本思想是根据一定的算法将原始数据(术语为明文,Plaintext)变换为不可直接识别的格式(术语为密文,Ciphertext),从而使得不知道解密算法的人无法获知数据内容。加密方

法有两种,一种是替换法,该方法使用密匙(EncryptionKey)将明文中的每个字符转换为密文中的一个字符。另一种方法是置换法,该方法仅将明文的字符按不同的顺序重新排列。单独使用这两种方法的任意一种都是不够安全的。但是将这两种方法结合起来就能提供相当高的安全程度。4

.5数据加密采用这种结合算法的例子是美国1977年制定的官方加密标准,数据加密标准(DataEncryptionStandard,简称DES)。目前有些数据库产品提供了数据加密例行程序,可根据用户的要

求自动对存储和传输的数据进行加密处理。另一些数据库产品虽然本身未提供加密程序,但提供了接口,允许用户用其他厂商的加密程序对数据加密。由于数据加密与解密也是比较费时的操作,而且数据加密与解密程序会占用大量系统资源,因此数据加密功能通常

也作为可选特征,允许用户自由选择,只对高度机密的数据加密。4.6统计数据库安全性一般地,统计数据库允许用户查询聚集类型的信息(例如合计、平均值等),但是不允许查询单个记录信息。例如,查寻“程序员的平均工资是多少?”是合法的,但是查询“程序员张勇的工资是多少?”就不允许。在统计数据库中存

在着特殊的安全性问题,即可能存在着隐蔽的信息通道,使得可以从合法的查询中推导出不合法的信息。4.6统计数据库安全性例如下面两条查询都是合法的:本公司共有多少女高级程序员?本公司女高级程序员的工资总额是多少?如果第1个查询结果是“1”,那么第2个查询的结果显然就是这个程序员的工资数。这样

统计数据库的安全性机制就失效了。为了解决这个问题,可以规定任何查询至少要涉及N个以上的记录(N足够大)。但是即使这样,还是存在另外的泄密途径。例如:4.6统计数据库安全性某用户A想知道另一个用户B的工资总额,他可以通过下列两个合法查询获得

:用户A和其他N个程序员的工资总额是多少?用户B和其他N个程序员的工资总额是多少?假设第一个查询结果为X,第2个查询结果为Y,由于用户A知道自己的工资是Z,那么他可以计算出用户B的工资=Y-(X-Z)。4.6统计数据库安全性这个例子的关键之处在于两个查询之间有很多重复的数据项(即其他N个程

序员)。因此可以在规定任意两个查询的相交数据项不能超过M个。这样就使得获取他人数据更加困难了。无论采取什么安全措施,都仍然会存在绕过这些机制的途径。好的安全性措施应该使得那些试图破坏安全的人所花费的代价远远超过他们所得到的利益,

这也是整个数据库安全机制设计的目标。4.7小结随着计算机特别是计算机网络的发展,数据的共享日益加强,数据的安全保密越来越重要。DBMS是管理数据的核心,因而其自身必须有一整套完整而有效的安全机制。《可信计算机系统评

测标准》TCSEC/TDI是目前各国所引用或制定的一系列安全标准中最重要的一个。TCSEC/TDI从安全策略、责任、保证和文档四个方面描述了安全性级别的指标。按照这些指标,目前许多大型DBMS达到了C2级,其安全版本达到了B1级。实现数据库系统安全性的

技术和方法有多种,最重要的是存取控制技术和审计技术。C2级的DBMS必须具有自主存取控制功能和初步的审计功能,B1的DBMS必须具有强制存取和增强的审计功能。自主存取功能一般是通过SQL的GRANT语句和REVOKE

语句来实现的。

小橙橙
小橙橙
文档分享,欢迎浏览!
  • 文档 25747
  • 被下载 7
  • 被收藏 0
广告代码123
若发现您的权益受到侵害,请立即联系客服,我们会尽快为您处理。侵权客服QQ:395972555 (支持时间:9:00-21:00) 公众号
Powered by 太赞文库
×
确认删除?