数据库原理数据库安全性

上传人:沈*** 文档编号:152666808 上传时间:2022-09-16 格式:PPT 页数:42 大小:107.50KB
返回 下载 相关 举报
数据库原理数据库安全性_第1页
第1页 / 共42页
数据库原理数据库安全性_第2页
第2页 / 共42页
数据库原理数据库安全性_第3页
第3页 / 共42页
点击查看更多>>
资源描述
本章内容提要本章内容提要 随着计算机特别是计算机网络的发展,数据的共享日益加强,数据的安全保密越来越重要。DBMS是管理数据的核心,因而其自身必须具有一整套完整而有效的安全性机制。实现数据库系统安全性的技术和方法有多种,最重要的是存取控制技术和审计技术。第九章第九章 数据库安全性数据库安全性 本章重点:本章重点:安全性定义可信计算机系统评测标准自主存取控制(DAC)方法强制存取控制(MAC)方法 本章难点:本章难点:可信计算机系统评测标准自主存取控制(DAC)方法强制存取控制(MAC)方法第九章第九章 数据库安全性数据库安全性 为了保证数据库数据的安全可靠和正确有效,DBMS必须提供统一的数据保护功能。数据库的数据保护主要包括数据的安全性和完整性。本章讨论数据的安全性。第九章第九章 数据库安全性数据库安全性 数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄露、更改或破坏。数据库的安全性与计算机系统的安全性是紧密联系、相互支持的。第九章第九章 数据库安全性数据库安全性9.1.1 计算机系统的三类安全性问题 计算机系统安全性,是指为计算机系统建立和采取的各种安全保护措施,以保护计算机系统中的硬件、软件及数据,防止其因偶然或恶意的原因使系统遭到破坏,数据遭到更改或泄露等。计算机安全不仅涉及到计算机系统本身的技术问题、管理问题,还涉及法学、犯罪学、心理学的问题。第九章第九章 数据库安全性数据库安全性9.1 9.1 计算机安全性概述计算机安全性概述9.1.1 计算机系统的三类安全性问题 计算机安全的内容包括了计算机安全理论与策略;计算机安全技术、安全管理、安全评价、安全产品以及计算机犯罪与侦察、计算机安全法律、安全监察等等。计算机系统的安全性问题可分为三大类:技术安全类管理安全类政策法律类第九章第九章 数据库安全性数据库安全性9.1 9.1 计算机安全性概述计算机安全性概述第九章第九章 数据库安全性数据库安全性9.1 9.1 计算机安全性概述计算机安全性概述1.技术安全技术安全是指计算机系统中采用具有一定安全性的硬件、软件来实现对计算机系统及其所存数据的安全保护,当计算机系统受到无意或恶意的攻击时仍能保证系统正常运行,保证系统内的数据不增加、不丢失、不泄露。2.管理安全 技术安全之外的,诸如软硬件意外故障、场地的意外事故、管理不善导致的计算机设备和数据介质的物理破坏、丢失等安全问题,视为管理安全。第九章第九章 数据库安全性数据库安全性9.1 9.1 计算机安全性概述计算机安全性概述3.政策法律类政策法律是指政府部门建立的有关计算机犯罪、数据安全保密的法律道德准则和政策法规、法令。这里,只讨论技术安全类。第九章第九章 数据库安全性数据库安全性9.1 9.1 计算机安全性概述计算机安全性概述 9.1.2 可信计算机系统评估标准 为降低进而消除对系统的安全攻击,尤其是弥补原有系统在安全保护方面的缺陷,在计算机安全技术方面逐步建立了一套可信标准。在目前各国所引用或制定的一系列安全标准中,最重要的当推1985年美国国防部(DoD)正式颁布的 DoD可信计算机系统评估标准(Trusted Computer System Evaluation Criteria,简记为TCSEC)1或DoD85)。制定这个标准的目的主要有:1.提供一种标准,使用户可以对其计算机系统内敏感信息安全操作的可信程度做出评 估。2.给计算机行业的制造商提供一种可循的指导规则,使其产品能够更好的满足敏感应用 的安全需求。第九章第九章 数据库安全性数据库安全性9.1 9.1 计算机安全性概述计算机安全性概述 9.1.2 可信计算机系统评估标准 TCSEC又称桔皮书,1991年4月美国NCSC(国家计算机安全中心)颁布了可信计算机系统评估标准关于可信数据库系统的解释(Trusted Database Interpretation 简记为TDI,即紫皮书),将TCSEC扩展到数据库管理系统。TDI中定义了数据库管理系统的设计与实现中需满足和用以进行安全性级别评估的标准。第九章第九章 数据库安全性数据库安全性9.1 9.1 计算机安全性概述计算机安全性概述第九章第九章 数据库安全性数据库安全性9.1 9.1 计算机安全性概述计算机安全性概述 9.1.2 可信计算机系统评估标准 TDI与TCSEC一样,从四个方面来描述安全性级别划分的指标(每个方面又细分为若干项)(详见:P284-P285)R1 安全策略(Security Policy)R2 责任(Accountability)R3 保证(Assurance)R4 文档(Documentation)根据计算机系统对上述各项指标的支持情况,TCSEC(TDI)将系统划分为四组(division)七个等级,第九章第九章 数据库安全性数据库安全性9.1 9.1 计算机安全性概述计算机安全性概述表9.1 TCSEC/TDI安全级别划分安全级别定 义A1验证设计(Verified Design)B3安全域(Security Domains)B2结构化保护(Structural Protection)B1标记安全保护(Labeled Security Protection)C2受控的存取保护(Controlled Access Protection)C1自主安全保护(Discretionary Security Protection)D最小保护(Minimal Protection)系统可靠或可信程度逐渐增高第九章第九章 数据库安全性数据库安全性9.1 9.1 计算机安全性概述计算机安全性概述 在TCSEC中建立的安全级别之间具有一种偏序向下兼容的关系,即较高安全性级别提供的安全保护要包含较低级别的所有保护要求,同时提供更多或更完善的保护能力第九章第九章 数据库安全性数据库安全性9.1 9.1 计算机安全性概述计算机安全性概述一、安全性等级1.D级 D级是最低级别。保留D级的目的是为了将一切不符合更高标准的系统,统统归于D组。2.C1级只提供了非常初级的自主安全保护。能够实现对用户和数据的分离,进行自主存取控制(DAC),保护或限制用户权限的传播。现有的商业系统往往稍作改进即可满足要求。3.C2级实际是安全产品的最低档次,提供受控的存取保护,即将C1级的DAC进一步细化,以个人身份注册负责,并实施审计和资源隔离。很多商业产品已得到该级别的认证。第九章第九章 数据库安全性数据库安全性9.1 9.1 计算机安全性概述计算机安全性概述4.B1级标记安全保护。对系统的数据加以标记,并对标记的主体和客体实施强制存取控制(MAC)以及审计等安全机制。B1级能够较好地满足大型企业或一般政府部门对于数据的安全需求,这一级别的产品才认为是真正意义上的安全产品。5.B2级结构化保护。建立形式化的安全策略模型并对系统内的所有主体和客体实施DAC和MAC。从目前情况看,经过认证的、B2级以上的安全系统非常稀少,而数据库方面则没有符合B2标准的产品。第九章第九章 数据库安全性数据库安全性9.1 9.1 计算机安全性概述计算机安全性概述6.B3级安全域。该级的TCB必须满足访问监控器的要求,审计跟踪能力更强,并提供系统恢复过程。7.A1级验证设计,即提供B3级保护的同时给出系统的形式化设计说明和验证以确信各安全保护真正实现。实际上,B2以上的系统标准更多地还处于理论研究阶段,产品化以至商品化的程度都不高,其应用也多限于一些特殊的部门。第九章第九章 数据库安全性数据库安全性9.2 9.2 数据库安全性控制数据库安全性控制 在一般计算机系统中,安全措施是一级一级层层设置的。例如可以有如下的模型:第九章第九章 数据库安全性数据库安全性9.2 9.2 数据库安全性控制数据库安全性控制与数据库使用直接有关的安全措施有:(1)用户标识和鉴别(2)存取控制(3)视图机制(4)审计日志(监视)(5)数据加密第九章第九章 数据库安全性数据库安全性9.2 9.2 数据库安全性控制数据库安全性控制9.2.1 用户标识与鉴别 用户标识和鉴别是系统提供的最外层安全保护措施。方法是由系统提供一定的方式让用户标识自己的名字或身份。每次用户要求进入系统时,由系统进行核对,通过鉴定后才提供机器使用权。常用检查方法:(1)确认用户标识 (2)口令 (3)过程识别 (4)密码卡 (5)指纹、声音识别 主要目的:防止不合法的用户使用系统。第九章第九章 数据库安全性数据库安全性9.2 9.2 数据库安全性控制数据库安全性控制9.2.2 存取控制数据库安全性所关心的主要是DBMS的存取控制机制。数据库安全最重要的一点就是确保只授权给有资格的用户访问数据库的权限,同时令所有未被授权的人员无法接近数据,这主要通过数据库系统的存取控制机制实现。主要目的:防止合法用户“越权”使用系统。第九章第九章 数据库安全性数据库安全性9.2 9.2 数据库安全性控制数据库安全性控制存取控制机制主要包括两部分:(1)定义用户权限,并将用户权限登记到数据字典中。(2)合法权限检查,每当用户发出存取数据库的操作请求后(请求一般应包括操作类型、操作对象和操作用户等信息),DBMS查找数据字典,根据安全规则进行合法权限检查,若用户的操作请求超出了定义的权限,系统将拒绝执行此操作。用户权限定义和合法权检查机制一起组成了DBMS的安全子系统。第九章第九章 数据库安全性数据库安全性9.2 9.2 数据库安全性控制数据库安全性控制 当前大型的DBMS一般都支持C2级中的自主存取控制(DAC),有些DBMS同时还支持B1级中的强制存取控制(MAC)。第九章第九章 数据库安全性数据库安全性9.2 9.2 数据库安全性控制数据库安全性控制9.2.3 自主存取控制(DAC)方法 在自主存取控制中,用户对于不同的数据对象有不同的存取权限,不同的用户对同一对象也有不同的权限,而且用户还可将其拥有的存取权限转授给其他用户。因此自主存取控制非常灵活。大型数据库管理系统几乎都支持自主存取控制,目前的SQL标准也对自主存取控制提供支持,这主要通过SQL 的GRANT语句和REVOKE语句来实现。第九章第九章 数据库安全性数据库安全性9.2 9.2 数据库安全性控制数据库安全性控制用户权限是由两个要素组成的:(1)数据对象 (A)数据本身 (B)外模式、模式、内模式(2)操作类型 (A)检索 (B)修改、删除和插入 定义一个用户的存取权限就是要定义这个用户可以在哪些数据对象上进行哪些类型的操作。在数据库系统中,定义存取权限称为授权(Authorization)。第九章第九章 数据库安全性数据库安全性9.2 9.2 数据库安全性控制数据库安全性控制 用户的存取权限可以用授权矩阵表示:数据对象操作类型模式模式建立、修改、检索外模式建立、修改、检索内模式建立、修改、检索数据表查找、插入、修改、删除属性列查找、插入、修改、删除第九章第九章 数据库安全性数据库安全性9.2 9.2 数据库安全性控制数据库安全性控制用SQL的GRANT语句和REVOKE语句具有安全性控制功能,首先,数据对象的创建者自动获得对于该数据对象的所有操作权限。这些权限可以通过GRANT语句转授给其他用户。例:表Student的创建者自动获得对该表的SELECT,INSERT,UPDATE和DELETE等权限,这些权限可以通过GRANT语句转授给其他用户。如:GRANT SELECT,INSERT ON Student TO 王平 WITH GRANT OPTION;也可以使用REVOKE语句将权限收回,例如:REVOKE INSERT ON Student FROM 王平 CASCADE;第九章第九章 数据库安全性数据库安全性9.2 9.2 数据库安全性控制数据库安全性控制 用户权限定义中数据对象范围越小授权子系统就越灵活。授权粒度越细,授权子系统就越灵活,但系统定义与检查权限的开销也会相应地增大。衡量授权子系统精巧程度的另一个尺度是能否提供与数据值有关的授权。若授权依赖于数据对象的内容,则称为是与数据值有关的授权。视图机制间接地实现了支持存取谓词的用户权限定义第九章第九章 数据库安全性数据库安全性9.2 9.2 数据库安全性控制数据库安全性控制例:王平只能检索计算机系学生的信息,这就要求系统能支持存取谓词。在不直接支持存取谓词的系统中,可以先建立计算机系学生的视图CS Student,然后在视图上进一步定义存取权限,把对CS_Student的SELECT权限授予王平 CREATE VIEW CS_Student AS (SELECT*FROM Student WHERE Sdept=CS );GRANT SELECT ON CS_Student TO 王平;第九章第九章 数据库安全性数据库安全性9.2 9.2 数据库安全性控制数据库安全性控制 自主存取控制能够通过授权机制有效地控制其他用户对敏感数据的存取。但是由于用户对数据的存取权限是“自主”的,用户可以自由地决定将数据的存取权限授予何人、决定是否也将“授权”的权限授予别人。在这种授权机制下,仍可能存在数据的“无意泄露”。第九章第九章 数据库安全性数据库安全性9.2 9.2 数据库安全性控制数据库安全性控制9.2.4 强制存取控制(MAC)方法 在强制存取控制中,每一个数据对象被标以一定的密级,每一个用户也被授予某一个级别的许可证。对于任意一个对象,只有具有合法许可证的用户才可以存取。强制存取控制因此相对比较严格。MAC是指系统为保证更高程度的安全性,按照TDI/TCSEC标准中安全策略的要求,所采取的强制存取检查手段。它不是用户能直接感知或进行控制的。MAC适用于那些对数据有严格而固定密级分类的部门第九章第九章 数据库安全性数据库安全性9.2 9.2 数据库安全性控制数据库安全性控制在MAC中,DBMS所管理的全部实体被分为主体和客体两大类。主体是系统中的活动实体,既包括DBMS所管理的实际用户,也包括代表用户的各进程。客体是系统中的被动实体,是受主体操纵的,包括文件、基表、索引、视图等等。对于主体和客体,DBMS为它们每个实例(值)指派一个敏感度标记(Label)。第九章第九章 数据库安全性数据库安全性9.2 9.2 数据库安全性控制数据库安全性控制敏感度标记被分成若干级别,通常为:绝密(Top Secret)机密(Secret)可信(Confidential)公开(Public)等。主体的敏感度标记称为许可证级别(Clearance Level),客体的敏感度标记称为密级(Classification Level)。MAC机制就是通过对比主体的Label和客体的Label,最终确定主体是否能够存取客体。第九章第九章 数据库安全性数据库安全性9.2 9.2 数据库安全性控制数据库安全性控制 当某一用户(或一主体)以标记label注册入系统时,系统要求他对任何客体的存取必须遵循如下规则:(1)仅当主体的许可证级别大于或等于客体的密级时,该主体才能读取相应的客体;(2)仅当主体的许可证级别等于客体的密级时,该主体才能写相应的客体。这两种规则的共同点在于它们均禁止了拥有高许可证级别的主体更新低密级的数据对象,从而防止了敏感数据的泄漏。第九章第九章 数据库安全性数据库安全性9.2 9.2 数据库安全性控制数据库安全性控制 强制存取控制(MAC)是对数据本身进行密级标记,无论数据如何复制,标记与数据是一个不可分的整体,只有符合密级标记要求的用户才可以操纵数据,从而提供了更高级别的安全性。第九章第九章 数据库安全性数据库安全性9.2 9.2 数据库安全性控制数据库安全性控制9.2.5 视图机制 进行存取权限控制时我们可以为不同的用户定义不同的视图,把数据对象限制在一定的范围内,也就是说,通过视图机制把要保密的数据对无权存取的用户隐藏起来,从而自动地对数据提供一定程度的安全保护。视图机制间接地实现了支持存取谓词的用户权限定义。第九章第九章 数据库安全性数据库安全性9.2 9.2 数据库安全性控制数据库安全性控制9.2.6 审计 审计功能把用户对数据库的所有操作自动记录下来放入审计日志(Audit Log)中。DBA可以利用审计跟踪的信息,重现导致数据库现有状况的一系列事件,找出非法存取数据的人、时间和内容等。审计通常是很费时间和空间的,所以DBMS往往都将其作为可选特征,允许DBA根据应用对安全性的要求,灵活地打开或关闭审计功能。审计功能一般主要用于安全性要求较高的部门。第九章第九章 数据库安全性数据库安全性9.2 9.2 数据库安全性控制数据库安全性控制9.2.7 数据加密 对于高度敏感性数据,除以上安全性措施外,还可以采用数据加密技术。数据加密是防止数据库中数据在存储和传输中失密的有效手段。加密的基本思想是根据一定的算法将原始数据(术语为明文,Plain text)变换为不可直接识别的格式(术语为密文,Cipher text),从而使得不知道解密算法的人无法获知数据的内容。第九章第九章 数据库安全性数据库安全性9.2 9.2 数据库安全性控制数据库安全性控制加密方法主要有两种:(A)替换方法,该方法使用密钥(Encryption Key)将明文中的每一个字符转换为密文中的一个字符。(B)置换方法,该方法仅将明文的字符按不同的顺序重新排列。单独使用这两种方法的任意一种都是不够安全的。但是将这两种方法结合起来就能提供相当高的安全程度。第九章第九章 数据库安全性数据库安全性9.3 9.3 统计数据库安全性统计数据库安全性一般地,统计数据库允许用户查询聚集类型的信息,但是不允许查询单个记录信息。在统计数据库中存在着特殊的安全性问题,即可能存在着隐蔽的信息通道,使得可以从合法的查询中推导出不合法的信息。第九章第九章 数据库安全性数据库安全性9.4 Oracle9.4 Oracle数据库的安全性措施数据库的安全性措施详见P296-299第九章第九章 数据库安全性数据库安全性小结:随着计算机特别是计算机网络的发展,数据的共享日益加强,数据的安全保密越来越重要。DBMS是管理数据的核心,因而其自身必须具有一整套完整而有效的安全性机制。TCSEC/TDI是目前各国所引用或制定的一系列安全标准中最重要的一个。目前许多大型DBMS 达到了C2级,其安全版本达到了B1。实现数据库系统安全性的技术和方法有多种,最重要的是存取控制技术和审计技术。
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 工作计划


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!