数据库安全模型与机制

上传人:飞****9 文档编号:130080252 上传时间:2020-04-24 格式:PPT 页数:65 大小:894.01KB
返回 下载 相关 举报
数据库安全模型与机制_第1页
第1页 / 共65页
数据库安全模型与机制_第2页
第2页 / 共65页
数据库安全模型与机制_第3页
第3页 / 共65页
数据库安全模型与机制_第4页
第4页 / 共65页
数据库安全模型与机制_第5页
第5页 / 共65页
点击查看更多>>
资源描述

《数据库安全模型与机制》由会员分享,可在线阅读,更多相关《数据库安全模型与机制(65页珍藏版)》请在金锄头文库上搜索。

1、计算机系统安全 第八章数据库安全模型与机制 数据安全概述数据库系统安全模型与实现策略数据库系统安全机制 数据库系统安全控制是指为数据库系统建立的安全保护措施 以保护数据库系统软件和其中的数据不因偶然或恶意的原因而遭到破坏 更改和泄露 目前 数据库系统安全与网络安全 操作系统安全及协议安全一起构成了信息系统安全的4个最主要的研究领域 数据库安全目标 1 数据库的完整性数据库的完整性是指保证数据库内容的正确性 有效性和一致性 数据库系统的完整性主要包括物理完整性和逻辑完整性 物理完整性是指保证数据库的数据不会因物理故障 如硬件故障 掉电等 导致存储数据破坏 逻辑完整性是对数据库逻辑结构的保护 包括

2、数据的语义完整性与操作完整性 数据的语义完整性指数据存取在逻辑上满足完整性约束 数据操作完整性主要指在并发事务中保证数据库中数据的逻辑一致性 数据库安全目标 2 数据库的保密性数据库的保密性是指不允许未经授权的用户存取数据 3 数据库的可用性数据库可用性是指不应拒绝授权用户对数据的访问 同时保证系统得运行效率并提供用户友好的人机交互 数据库安全目标 不同领域的应用对这三方面的要求侧重点会有较大的差异 数据库系统的安全除依赖自身内部的安全机制外 还与外部网络环境 应用环境 从业人员素质等因素息息相关 从广义上讲 数据库系统的安全框架可划分为网络系统层次 宿主操作系统层次和数据库管理系统三个层次

3、这三个层次共同构筑成数据库系统的安全体系 数据库的安全威胁 1 外围环境威胁外围环境威胁指攻击者对数据库管理系统外围环境 如操作系统 网络设备和其它硬件设备的攻击 而间接地威胁DBMS本身的威胁因素 例如 通过对数据库服务器所在操作系统的远程攻击或者对数据库服务器的存储设备的物理接触来获取 修改DBMS存储的各类信息的攻击 数据库的安全威胁 2 身份认证威胁身份认证威胁包括所有直接对用户标识和身份认证系统的威胁因素 例如 存储在外部服务中的认证信息可能被窃取 使得攻击者可以以合法用户的身份登录 拒绝正确用户登录系统 或者管理员滥用权力新增 修改 删除用户认证信息 修改系统认证策略等 数据库的安

4、全威胁 3 访问控制威胁包括所有直接对用户授权和访问控制的威胁因素 例如 非授权的信息泄露和非授权的数据修改等 非授权的信息泄露指未授权的用户有意或无意得到信息 通过对授权访问的数据进行推导分析获取非授权的信息包含这一类中 非授权的数据修改包括所有通过数据处理和修改而违反信息完整性的行为 数据库的安全威胁 4 数据处理威胁包括所有处理数据时的威胁因素 例如 在多级安全数据库中 为解决隐蔽信道问题通常需要提供多实例 这样会破坏系统的完整性约束 数据库的安全威胁 5 其它安全威胁安全威胁分为有意和无意的 非有意的安全威胁主要包括 自然或意外灾害可能会破坏系统的软硬件 系统软硬件的错误以及人为无意的

5、违反安全策略 将导致数据库系统完整性破坏 拒绝服务和信息泄露 数据库的安全需求 1 防止非法数据访问这是数据库安全最关键的需求之一 主要指仅允许授权的合法用户访问数据库 2 数据分级保护依据数据敏感级别进行多级保护 在包含敏感 非敏感混合数据的数据库中 严格控制对敏感数据的访问请求 仅允许经过授权的用户进行合法操作 且不允许其权利传播或转让 3 防止推断性攻击防止用户通过授权访问的低安全级数据推导出敏感数据 尤其是统计型数据库容易受到该类攻击 数据库的安全需求 4 数据库的完整性 该需求涉及到防止更改数据内容的非授权访问 以及病毒 蓄意破坏 或是系统级错误及故障等 这主要由DBMS通过访问控制

6、以及备份 恢复机制执行并完成保护工作 5 数据的操作完整性 在并行事务的模式下 保持数据的逻辑一致性 通常采用并行管理器和加锁机制完成 数据库的安全需求 6 数据的语义完整性 确保对数据在允许的范围之内修改 以保持数据的一致完整性 7 审计功能 提供数据的物理完整性 并记录下对数据的所有存取访问 根据结果进行分析与追踪 数据库安全评价标准 20世纪70年代初 美国军方率先发起对多级安全数据库管理系统 MultilevelSecureDatabaseManagementSystem 简称MLSDBMS 的研究 数据库安全评价标准 80年代 美国国防部根据军用计算机系统的安全需要 制定了 可信计算

7、机系统安全评估标准 TrustedComputerSystemEvaluationCriteria 简称TCSEC 以及该标准的可信数据库系统的解释 TrustedDatabaseInterpretation 简称为TDI 形成了最早的信息安全及数据库安全评估体系 TDI作为一种数据库安全评估标准 能够指导开发者在新开发的商用DBMS产品中提供安全特性 即TCSEC中所提出的可信要求 此外 TDI作为一种可度量的评估 为处理涉密 分级和其他敏感信息的安全数据库系统提供了一种等级评估的方法 数据库安全评价标准 90年代后期 信息技术安全评价通用准则 CommonCriteria 简称为CC 被I

8、SO接受为国际标准 确立了现代信息安全标准的框架 这些标准对安全数据库系统的研究及其应用系统的开发都具有重要的指导作用 数据库安全研究的发展 国外对计算机安全及数据库安全的研究起步较早 BLP模型是最早的一个完全形式化的多级安全模型 是计算机安全理论研究的开端 随着数据库安全理论和技术的发展 为了满足对安全数据库系统越来越迫切的需求 国外各大数据库厂商纷纷推出了各自的安全数据库产品 如ORACLE公司的TrustedOracle Informix公司的Informix online SecureSybase公司的SecureSQLServer等产品 近几年来 Oracle公司的Oracle9i

9、和Oracle10g从用户认证 访问控制 加密存储和审计策略等方面进一步加强了安全控制功能 数据库安全研究的发展 基于对安全数据库的需求 总体来讲 我国的研究成果在安全性和可用性上还有一定的差距 目前 国外几大数据库厂商的低安全级别的数据库产品占据了国内的大部分市场 国内的电信 金融 电力 保险等行业基本上都采用的是ORACLE Sybase Informix三大数据库厂商和IBM微软的低安全级别的数据库产品 数据库系统的安全模型与实现策略 人们对数据库安全技术的研究是从研究安全模型开始的 安全模型也称为 策略表达模型 它是一种抽象且独立于软件实现的概念模型 数据库系统的安全模型是用于精确描述

10、数据库系统的安全需求和安全策略的有效方式 先后提出的数据库多级安全模型主要有BLP Biba SeaView和JajodiaSandhu 简称为JS 模型等 数据库系统的安全模型 多级关系多级关系完整性多级关系操作 多级安全数据库实现策略 1 可信过滤器 TF TrustedFilter 这种方式下DBMS本身无安全保证 只是在DBMS与用户应用程序之间设置一个可信过滤器 即在原有系统的基础上通过增加安全外壳来实现多级数据库的安全功能 显然 这种方式下数据库系统的安全性完全依赖于OS 2 平衡保障 BA BalancedAssurance 在一个安全OS的基础上建立一个安全DBMS 由OS和D

11、BMS来分担安全功能 这种方式下 DBMS的安全在很大程度上依赖于OS 多级安全数据库实现策略 3 一致保障 UA UniformedAssurance 实现一个安全DBMS来提供所有的安全功能 从DBMS的开发起步 将多级安全模型的安全机制和数据库加密在其内核中实现 与DBMS紧密结合在一起 其安全性较高 这种方式对OS的依赖少 DBMS可以单独评估 多级安全数据库实现策略 上述三种方法中在实现难度上和所提供的安全性能均依次增强 具体采用哪种实现方法 根据应用环境的需要 在对多种因素如 安全性 性能 成本等进行权衡考虑后来确定 在实际应用中可能采取其中一种或多种结构的混杂方式 数据库系统安全

12、机制 用户身份认证存取控制数据库加密推理控制审计追踪 用户身份认证 数据库用户的安全等级不同 所分配的权限也不一样 用户身份认证是安全系统的第一道防线 目的是防止非法用户访问系统 用户身份认证是DBMS对访问者授权的前提 数据库系统必须建立严格的用户认证机制 最简单的方法是口令控制 用户输入ID和密码 系统进行验证是否合法 还可以采用比较复杂的计算过程和函数来完成 如可采用智能卡技术 数字签名技术和生理特征 如指纹 体温 声纹 视网膜纹等 认证技术 存取控制 自主存取控制 DiscretionaryAccessControl DAC 强制存取控制 MandatoryAccessControl

13、MAC 基于角色访问控制 RoleBasedAccessControl RBAC 基于角色访问控制 RBAC 基于角色的访问控制最初是为了处理大型系统中数量庞大的用户管理和权限管理问题 RBAC在主体和权限之间增加了一个中间桥梁 角色 权限被授予角色 管理员通过指定用户为某特定角色来为用户授权 从而大大简化了授权管理 具有强大的可操作性和可管理性 角色是用户与一系列权限的集合 现阶段的RBAC模型通常称为RBAC96 它由四个模型组成 下面分别介绍之 数据库加密 数据库系统有其独特的加密方法和密钥管理方法 一般来说 一个好的数据库加密系统应该满足以下几个方面的要求 与通信加密相比 其信息保存时

14、间长 不可能采取一次一密的方法进行加密 而因选用其他加密的方式 使其达到实际不可破译的程度 实际加密后 存储空间不应明显增大 加密和解密速度要快 尤其是解密速度要快 使用户感觉不到解密和解密带来系统性能的变化 对数据库的加密不应影响系统的原有功能 而应保持对数据库的操作 如查询 检索 修改 更新 的灵活性和简便性 加密后的数据库仍能允许用户以不同的粒度对之进行访问 灵活的密钥管理机制 加解密密钥存储安全 使用方便可靠 数据库加密的实现机制 可考虑在三个不同层次实现对数据库数据的加密 这三个层次分别是OS DBMS内核层和DBMS外层 1 OS层加密在OS层无法辨认数据库文件中的数据关系 从而无

15、法产生合理的密钥 对密钥合理的管理和使用也很难 所以 对大型数据库来说 在OS层对数据库文件进行加密很难实现 2 DBMS内核层加密在DBMS内核层实现加密 是指数据在物理存取之前完成加 脱密工作 这种方式势必造成DBMS和加密器 硬件或软件 之间的接口需要DBMS开发商的支持 DBMS内核层实现加密关系图 在DBMS内核层加密方式的优点是加密功能强 并加密功能集成为DBMS的功能 可以实现加密功能与DBMS之间的无缝耦合 对于数据库应用来说 库内加密方式是完全透明的 不需要做任何改动就可以直接使用 库内加密方式的缺点 是对系统性能影响比较大 DBMS除了完成正常的功能外 还要进行加 解密运算

16、 从而加重了数据库服务器的负载 二是密钥管理风险大 加密密钥与库数据一同保存在服务器中 其安全性依赖于DBMS的访问控制机制 三是加密功能依赖于数据库厂商的支持 DBMS一般只提供有限的加密算法与强度可供选择 自主性受限 3 DBMS外层加密将数据库加密系统做成DBMS的一个外层工具 加 解密过程发生在DBMS之外 BMS管理的是密文 加 解密过程可在客户端实现 也可由专门的加密服务器或硬件完成 定义加密要求工具 模块的主要功能是定义如何对每个数据库表数据进行加密 在创建了一个数据库表后 通过此工具对该表进行定义如何加密 数据库应用系统 的功能是完成数据库定义和操作 数据库加密系统将根据加密要求自动完成对数据库数据的加 解密 DBMS外层实现加密关系图 库外加密与库内加密方式相比的优点 是由于加 解密过程在客户端或专门的加密服务器实现 所以减少了DBMS设计复杂度与运行负担 二是可以将加密密钥与所加密的数据分开保存 加密密钥保存在加密服务器中 甚至是硬件中 提高了安全性 三由客户端与服务器的配合 可以实现端到端的网上密文传输 库外加密的缺点 加密后的数据库功能受到一些限制 例如加密后的

展开阅读全文
相关资源
相关搜索

当前位置:首页 > IT计算机/网络 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号