数据库原理_第4章_数据库安全性课件.pptx
《数据库原理_第4章_数据库安全性课件.pptx》由会员分享,可在线阅读,更多相关《数据库原理_第4章_数据库安全性课件.pptx(104页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第4章 数据库安全性u 4.1 数据库安全性概述 u 4.2 访问控制 u 4.3 数据库加密技术 u 4.4 SQL Server的安全机制 u 4.5 Oracle的安全机制 u 小结本章主要内容本章主要内容3/6/2023 数据库的应用越来越广泛,存储的信息越来越有价值,一旦这些信息暴露,其后果不可设想。因此,数据库中的数据必须得到有力的保护。数据库的特点之一是DBMS提供统一的数据保护功能来保证数据的安全可靠和正确有效,数据库的数据保护包括数据的安全性和数据的完整性。3/6/2023第4章 数据库安全性u 4.1 数据库安全性概述 u 4.2 访问控制 u 4.3 数据库加密技术 u
2、4.4 SQL Server的安全机制 u 4.5 Oracle的安全机制 u 小结3/6/2023 数据库系统的安全必须在以下几个层次上采数据库系统的安全必须在以下几个层次上采取安全措施:取安全措施:数据库系统层次;操作系统层次;网络层次;物理层次(物理结点保护);人员层次。3/6/20234.1.1 数据库安全的基本概念数据库安全的基本概念 可信计算基可信计算基 可信计算基是指为实现系统安全保护策略的各种安全保护机制的集合。它是数据安全的基本概念。主体、客体与主客体分离主体、客体与主客体分离 主体是数据的访问者,包括用户、应用程序、进程以及线程等。客体是数据及其载体,包括表、视图、数据文件
3、、磁盘区域、内存区域、存储过程等。主、客体集间存在单向(主体向客体)访问关系。3/6/2023 身份鉴别身份鉴别 身份鉴别就是主体访问客体前,系统要求主体用一定标志标识自己身份。可信计算基使用这些标志以鉴别用户身份,并阻止非法主体的访问。数据完整性数据完整性 数据完整性指保护数据的修改并保持其一致性。通过完整性策略阻止非授权主体修改或破坏数据。在网络环境下可使用敏感标志以确保数据在传输中不被破坏。3/6/2023 自主访问控制自主访问控制 即可信计算基定义和控制系统中命名主体对客体的访问,实施机制(如访问控制表)允许主体规定和控制对客体的共享,并阻止非授权主体访问客体。自主访问控制适合在单机方
4、式下的访问控制,并允许规定客体的共享控制。审计审计 指设置审计功能记录可疑主体访问客体的轨迹,以防止非法主体对客体的访问。记录的内容包括:访问时间、用户、操作类型、是否成功等。3/6/2023 标记与强制访问控制标记与强制访问控制 它是与自主访问控制是完全不同的访问控制手段。需对主体与客体加上标记,标记可以是一个数字或一个字母集合。一般有两种标记:一是安全级别标记,是一个数字,规定了主客体的安全级别,只有主体级别高于客体级别时,才允许访问;另一个是安全范围标记,是一个字母集合,规定了主体的访问范围,只有主体的标记包含或相等于客体的标记时才允许访问。3/6/20234.1.2 信息安全标准简介信
5、息安全标准简介1、国际及国内的相关信息安全评估标准发展阶段:奠基时期奠基时期 1967年美国国防部(DOD)成立了一个研究组,针对当时计算机使用环境中的安全策略进行研究。1969年,C.Weisman发表了有关Adept-50的安全控制研究成果;1970年,W.H.Ware推出的研究报告对多渠道访问的资源共享的计算机系统引起的安全问题进行了研究;1972年,J.P.Anderson提出了引用监控机、引用验证机制和安全核等根本思想,揭示安全规则的严格模型化的重要性,并提出了独立的安全评价方法问题。之后,D.E.Bell和L.J.LaPadula提出了著名Bell&LaPadula模型,该模型在M
6、ultics系统中得到了成功实现。3/6/2023 在以上成果的基础上,1983年美国国防部首次公布了可信计算机系统评估准则(TCSEC)以用于对操作系统的评估,这是IT历史上的第一个安全评估标准,1985年公布了第二版。TCSEC 为业界所熟知的名字“桔皮书”则是因其封面的颜色而得来。后来DOD又发布了可信数据库解释(TDI)、可信网络解释(TNI)等一系列与TCSEC相关的说明和指南,由于这些文档发行时封面均为不同的颜色,因此常被人称为“彩虹计划”。这一时期进行了大量的基础研究工作,并最终形成第一个美国国内的信息安全评估标准TCSEC。3/6/2023 1988年,德国(当时的西德)信息安
7、全局推出的计算机安全评价标准绿皮书。1989 年英国的贸易工业部和国防部联合开发了计算机安全评价标准。1990 年,欧共体委员会(CEC)首度公布了由英国、德国、法国和荷兰提出的信息技术安全性评估准则(ITSEC)安全评估标准。1992年4月,加拿大可信计算机产品评估准则(CTCPEC)的草案发布,它可被看作为在TCSEC和ITSEC范围之上的一个进一步发展,而且它实现结构化安全功能的方法也影响了后来的国际标准。1992年8月,日本电子工业发展协会(JEIDA)公布了日本计算机安全评估准则-功能要求(JCSEC2FR)。1992年12月,美国NIST和国家安全局(NSA)发布一个TCSEC的替
8、代标准信息技术安全联邦准则(FC2ITS)的草案1.0。混沌时期混沌时期3/6/2023 合并时期合并时期 1996年,六国七方(英国、加拿大、法国、德国、荷兰、NSA和NISA)公布了信息技术安全性评估通用准则(简称为通用准则,CC),该标准是北美和欧盟联合以开发一个统一的国际互认的安全标准的结果,是在美国、加拿大、欧洲等国家和地区分别自行推出的评估标准及具体实践的基础上,通过相互间的总结和互补发展起来的。1998年,六国七方又公布了CC的2.0版。统一时期统一时期 1999年12月ISO采纳CC,并作为国际标准ISO 15408发布,因此ISO 15408实际上就是CC标准在国际标准化组织
9、里的称呼。这一时期称为统一时期。3/6/2023 美国的美国的TCSECTCSEC 1983年美国国防部首次公布了可信计算机系统评估准则(TCSEC)以用于对操作系统的评估,这是IT历史上的第一个安全评估标准,1985年公布了第二版。TCSEC为业界所熟知的名字“桔皮书”则是因其封面的颜色而得来。TCSEC 所列举的安全评估准则主要是针对美国政府的安全要求,着重点是基于大型计算机系统的机密文档处理方面的安全要求。CC被接纳为国际标准后,美国已停止了基于TCSEC的评估工作。2、各标准的基本内容3/6/2023美国颁布的TCSEC把数据安全级别划分为四类七级:D级:无安全保护的系统。Cl级:具有
10、主体、客体及主客体分离、身份鉴别、数据完整性、自主访问控制功能的系统;核心是自主访问控制。C2级:满足C1级全部功能,且具有审计功能的系统;核心是审计功能。目前国内使用的系统大部分符合此标准。3/6/2023 B1级:满足C2级全部功能,且具有标记及强制访问控制功能的系统;核心是强制访问控制。国际上有部分系统符合此标准,国内基本上没有满足此标准的系统;满足此标准的系统可称为可信系统或安全系统。B2级:满足B1级全部功能,且具有形式化安全模型与隐蔽通道功能的系统;核心是形式化安全模型。目前国内外均无满足此标准的系统。3/6/2023 B3级:满足B2级全部功能,且具有访问监控器功能的系统;核心是
11、访问监控器。目前国内外均无满足此标准的系统。A级:更高的形式化要求。目前国内外均无满足此标准的系统。3/6/2023 目前市面上常用软件经过权威机构的评测,确定了其安全级别。如Oracle,Sybase,informix,SQL Server等数据库系统软件符合C1或C2级安全要求;Windows,Unix操作系统符合Cl或C2级安全要求。市场上大部分系统软件都处于C1或C2级安全级别。此外,美国有符合Bl级的军用版本Oracle数据库系统和WinNT操作系统。国内有一些符合B1级的安全原型DBMS:如OpenBASE,Cobase等。3/6/2023欧共体委员会的欧共体委员会的 ITSEC
12、ITSEC 信息技术安全性评估准则(ITSEC)是英国、德国、法国和荷兰四个欧洲国家安全评估标准的统一与扩展,由欧共体委员会在1990年首度公布。ITSEC 的目标在于成为国家认证机构所进行的认证活动的一致基准,还有更重要的一点就是评估结果的互认。自1991年7月以来,ITSEC就一直被实际应用在欧洲国家的评估和认证方案中,直到其为CC所取代。3/6/2023 加拿大系统安全中心的加拿大系统安全中心的 CTCPEC CTCPEC 1992年4月,加拿大可信计算机产品评估准则(CTCPEC)3.0版的草案发布,它可被看作为在TCSEC及ITSEC范围之上的一个进一步发展,而且它实现结构化安全功能
13、的方法也影响了后来的国际标准。3/6/2023 国际通用准则国际通用准则CC(ISO/IEC15408-1999)CC(ISO/IEC15408-1999)国际信息技术安全性评估通用准则(简称为通用准则,CC)是北美和欧盟联合以开发一个统一的国际互认的安全标准的结果,是在美国、加拿大、欧洲等国家和地区分别自行推出的评估标准及具体实践的基础上,通过相互间的总结和互补发展起来的。3/6/2023 1996年,六国七方(英国、加拿大、法国、德国、荷兰、NSA国家安全局和NIST国家标准技术研究所)公布了CC的1.0版,1998年,六国七方又公布了CC的2.0版。CC取代了TCSEC、ITSEC,及
14、CTCPEC,是事实上的国际安全评估标准。1999年,CC被国际标准化组织(ISO)批准成为国际标准(ISO/IEC15408-19999)并正式颁布发行,其对应的CC版本为2.1版。3/6/2023 CC作为评估信息技术产品和系统安全性的国际性通用准则,是信息技术安全性评估结果国际互认的基础,遍及世界各地的众多组织现在均已实施了CC。互认通过签署互认协定(MRA)来实现,产品在一个MRA成员国评估通过就可被其他的成员国所接受,从而避免重复的评估行为。对于其他国家来讲,只要能够证明他们能够实现MRA中的互认所要求的极其严格的技术与程序上的条件,就可寻求加入MRA。Windows 2000、Su
15、n Solaris 8、Oracle 9i、DB2 V8.2等都已通过了CC的EAL4(B1)。3/6/2023 我国的安全评估标准我国的安全评估标准 为提高我国计算机信息系统安全保护水平,1999年9月国家质量技术监督局发布了国家标准 GB17859-1999计算机信息安全保护等级划分准则,它是建立安全等级保护制度、实施安全等级管理的重要基础性标准。该标准是我国计算机信息系统保护等级系列标准的第一部分,其他数十个相关标准的制订工作还正在紧张进行。该标准的制定参照了美国的TCSEC。3/6/2023 该标准共分为五级与美国TCSEC标准的对应关系如下:第一级:用户自主保护级C1级 第二级:系统
16、审计保护级C2级 第三级:安全标记保护级B1级 第四级:结构化保护级B2级 第五级:访问验证保护级B3级3/6/2023 自从CC 1.0版公布后,我国相关部门就一直密切关注着它的发展情况,并对该版本做了大量的研究工作。2001年3月,国家质量技术监督局正式颁布了援引CC的国家标准GB/T18336-2001信息技术 安全技术 信息技术安全性评估准则。3/6/20233、对数据库安全的威胁3/6/2023基于计算机技术的防卫措施主要有:用户授权:包括授权用户的身份验证以及为他们授予访问权限。通过视图调整授权:定义可向用户授权数据库特定部分的用户视图。备份和恢复:定期建立数据库备份副本,并测试和
17、实现恢复过程。保护机密数据:使用加密技术保护机密数据。3/6/2023第4章 数据库安全性u 4.1 数据库安全性概述 u 4.2 访问控制 u 4.3 数据库加密技术 u 4.4 SQL Server的安全机制 u 4.5 Oracle的安全机制 u 小结3/6/2023 从本质上讲,数据库安全依赖于数据库系统的访问控制。数据库安全的一部分是控制物理访问,另一主要部分是通过DBMS控制访问。所有DBMS都包含安全系统,以保证授权用户访问数据库,这些安全机制一般指任意安全机制和强制安全机制。3/6/2023DBMS的安全机制的安全机制 3/6/2023 采用该方法以若干种指派模式授予各个用户访
18、问特定数据项的权限或权力。建立数据库对象的用户自动得到此对象的所有访问权限,包括将此对象的权限再授予他人。在授予或撤消访问权限时,主要有两种级别:数据库对象:数据项或数据元素,一般是基表或视图;用户:可以用一些授权标识符识别的单个用户或用户组。授权通常都是在这两种级别上进行。任意控制(任意控制(DACDAC)3/6/2023 DBMS提供了功能强大的授权机制,它可以给用户授予各种不同对象(表、视图、存储过程等)的不同使用权限(如 Select、update、insert、delete等)。在用户级别,可以授予数据库模式和数据操纵方面的以下几种授权,包括:创建和删除索引、创建新关系、添加或删除关
19、系中的属性、删除关系、查询数据、插入新数据、修改数据、删除数据等。在数据库对象级别,可将上述访问权限应用于数据库、基本表、视图和列等。授权 3/6/2023 如果要给成千上万个雇员分配许可,将面临很大的管理难题,每次有雇员到来或者离开时,就得有人分配或去除可能与数百张表或视图有关的权限。这项任务不但耗时,而且容易出错。一个相对简单有效的解决方案就是定义数据库角色。数据库角色是被命名的一组与数据库操作相关的权限,即一组相关权限的集合。可以为一组具有相同权限的用户创建一个角色。使用角色来管理数据库权限可以简化授权的过程。数据库角色3/6/2023DBARole用户用户用户用户授权授权授权管理授权管
20、理3/6/2023 强制控制强制控制 任意访问控制是关系数据库的传统方法,可对数据库提供充分保护,但它不支持随数据库各部分的机密性而变化,技术高超的专业人员可能突破该保护机制获得未授权访问。另外,由于用户对数据的存取权限是“自主”的,用户可以自由地决定将数据的存取权限授予何人、决定是否也将“授权”的权限授予别人。在这种授权机制下,仍可能存在数据的“无意泄露”。3/6/2023 强制访问控制克服了任意访问控制的缺点。在强制访问控制方法中,不能由一个用户不加控制地将访问权限授予或传递给另一用户。强制访问控制方法是指系统为了保证更高程度的安全性,按照TDI/TCSEC标准中安全策略的要求所采取的强制
21、访问检查手段,它不是用户能直接感知或进行控制的。强制访问控制主要适用于对数据有严格要求而固定密级分类的部门,如军事部门或政府部门。3/6/2023 强制访问控制模型基于与每个数据项和每个用户关联的安全性标识(Security Label)。安全性标识被分为若干级别:绝密(Top Secret)、机密(Secret)、秘密(Confidential)、一般(Public)。数据的标识称为密级(Security Classification),用户的标识称为许可级别证(Security Clearance)。3/6/2023 当某一用户以某一密级进入系统时,在确定该用户能否访问系统上的数据时应遵守
22、如下规则:(1)当且仅当用户许可证级别大于等于数据的密级时,该用户才能对该数据进行读操作。(2)当且仅当用户的许可证级别小于或等于数据的密级时,该用户才能对该数据进行写操作。3/6/2023数据库系统的安全机制数据库系统的安全机制 授权机制约束机制审计触发器存储过程用户身份验证操作系统数据库服务器(RDBMS)视图3/6/2023 视图机制视图机制 几乎所有的DBMS都提供视图机制。视图不同于基本表,它不存储实际数据。表存储数据,而视图好象表的窗口(虚表)。当用户通过视图访问数据时,是从基本表获得数据。视图提供了一种灵活而简单的方法,以个人化方式授予访问权限,是强大的安全工具。在授予用户对特定
23、视图的访问权限时,该权限只用于在该视图中定义的数据项,而未用于完整基本表本身。3/6/2023 对DBA而言,审计就是记录数据库中正在作什么的过程。审计记录可以告诉你正在使用哪些系统权限,使用频率是多少,多少用户正在登录,会话平均持续多长时间,正在特殊表上使用哪些命令,以及许多其他有关事实。审计审计3/6/2023 审计功能把用户对数据库的所有操作自动记录下来放入审计日志(Audit Log)中。审计日志一般包括下列内容:(1)操作类型(如修改、查询等)。(2)操作终端标识与操作人员标识。(3)操作日期和时间。(4)操作的数据对象(如表、视图、记录、属性等)。(5)数据修改前后的值。3/6/2
24、023审计一般可以分为用户级审计和系统级审计。用户级审计是任何用户可设置的审计,主要是针对自己创建的数据库或视图进行审计,记录所有用户对这些表或视图的一切成功和(或)不成功的访问要求以及各种类型的SQL操作。系统级审计只能由DBA设置,用以监测成功或失败的登录要求、监测Grant和Revoke操作以及其他数据库级权限下的操作。3/6/2023 统计数据库安全性统计数据库安全性统计数据库的特点允许用户查询聚集类型的信息(例如合计、平均值等)不允许查询单个记录信息示例:允许查询“程序员的平均工资是多少”不允许查询“程序员张勇的工资”3/6/2023统计数据库中特殊的安全性问题 隐蔽的信息通道 从合
25、法的查询中推导出不合法的信息3/6/2023例1:下面两个查询都是合法的 本公司共有多少女高级程序员?本公司女高级程序员的工资总额是多少?如果第一个查询的结果是“1”,那么第二个查询的结果显然就是这个程序员的工资数。规则1:任何查询至少要涉及N(N足够大)个以上的 记录。3/6/2023例2:用户A发出下面两个合法查询:用户A和其他N个程序员的工资总额是多少?用户B和其他N个程序员的工资总额是多少?若第一个查询的结果是X,第二个查询的结果是Y,由于用户A知道自己的工资是Z,那么他可以计算出用户B的工资=Y-(X-Z)。原因:两个查询之间有很多重复的数据项。规则2:任意两个查询的相交数据项不能超
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 原理 安全性 课件
限制150内