数据库原理第四章.ppt_第1页
数据库原理第四章.ppt_第2页
数据库原理第四章.ppt_第3页
数据库原理第四章.ppt_第4页
数据库原理第四章.ppt_第5页
已阅读5页,还剩65页未读 继续免费阅读

下载本文档

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

文档简介

第四章数据库安全性 2 数据库安全性 问题的提出数据库的一大特点是数据可以共享数据共享必然带来数据库的安全性问题数据库系统中的数据共享不能是无条件的共享例 军事秘密 国家机密 新产品实验数据 市场需求分析 市场营销策略 销售计划 客户档案 医疗档案 银行储蓄数据 数据库安全性 数据库的安全性是指保护数据库系统和数据 以防止非法使用所造成的数据泄漏 更改或破坏 3 4 对数据库安全性产生威胁的因素主要有 非授权用户对数据库的恶意存取和破坏数据库中重要或敏感的数据被泄漏安全环境的脆弱性 5 计算机系统中 安全措施是一级一级层层设置 计算机系统的安全模型 6 数据库安全性控制的常用方法用户身份鉴别存取控制视图审计密码存储 7 4 1数据库安全性控制 4 1 1用户身份鉴别4 1 2存取控制4 1 3数据库角色 8 4 1 1用户身份鉴别 用户身份鉴别 Identification Authentication 系统提供的最外层安全保护措施 9 常用的用户身份鉴别方法 静态口令鉴别 方式简单 但容易被攻击 安全性较低 动态口令鉴别 口令动态变化 一次一密 常用的方式如短信密码和动态令牌方式 增加了口令被窃取或破解的难度 目前较为安全的鉴别方式 常用的用户身份鉴别方法 生物特征鉴别 通过生物特征进行认证 如指纹 虹膜 掌纹等 智能卡鉴别 智能卡是一种不可复制的硬件 由用户随身携带 每次从智能卡中读取的数据是静态的 10 11 4 1 2存取控制 存取控制机制组成定义用户权限 权限即用户对某一数据对象的操作权力 合法权限检查用户权限定义和合法权检查机制一起组成了DBMS的安全子系统 12 常用存取控制方法自主存取控制 DiscretionaryAccessControl 简称DAC 灵活强制存取控制 MandatoryAccessControl 简称MAC 严格 13 一 自主存取控制方法 DAC 同一用户对于不同的数据对象有不同的存取权限不同的用户对同一对象也有不同的权限用户还可将其拥有的存取权限转授给其他用户 14 通过SQL的GRANT语句和REVOKE语句实现用户权限组成数据对象操作类型定义用户存取权限 定义用户可以在哪些数据库对象上进行哪些类型的操作定义存取权限称为授权 Authorization 15 定义存取权限用户检查存取权限DBMS授权粒度数据对象粒度 数据库 表 属性列 行数据值粒度 存取谓词授权粒度越细 授权子系统就越灵活 能够提供的安全性就越完善 但另一方面 因数据字典变大变复杂 系统定义与检查权限的开销也会相应地增大 16 1 SQL的授权功能 GRANT语句的一般格式 GRANT ON TO WITHGRANTOPTION 将对指定操作对象的指定操作权限授予指定的用户 17 1 用户的权限 基本表或视图的属主拥有对该表或视图的一切操作权限 存取控制的对象不仅有数据本身 还有数据库模式 2 接受权限的用户一个或多个具体用户PUBLIC 全体用户 18 关系数据库系统中的存取权限表 19 3 WITHGRANTOPTION子句 WITHGRANTOPTION子句 指定 可以再授予没有指定 不能传播不允许循环授权 即被授权者不能把权限再授回给授权者或其祖先 20 例1把查询Student表权限授给用户U1GRANTSELECTONTABLEStudentTOU1 例2把对Student表和Course表的全部权限授予用户U2和U3GRANTALLPRIVILIGESONTABLEStudent CourseTOU2 U3 GrantselectonstudenttoU1 GRANTallONStudenttotest 执行结果提示 ALL权限已不再推荐使用 并且只保留用于兼容性目的 它并不表示对实体定义了ALL权限 21 例3把对表SC的查询权限授予所有用户GRANTSELECTON TABLE SCTOPUBLIC 例4把查询Student表和修改学生姓名的权限授给用户U4GRANTUPDATE Sname SELECTON TABLE StudentTOU4 22 例5把对表SC的INSERT权限授予U5用户 并允许他再将此权限授予其他用户GRANTINSERTON TABLE SCTOU5WITHGRANTOPTION 传播权限执行例5后 U5不仅拥有了对表SC的INSERT权限 还可以传播此权限 GRANTINSERTON TABLE SCTOU6WITHGRANTOPTION 同样 U6还可以将此权限授予U7 GRANTINSERTON TABLE SCTOU7 但U7不能再传播此权限 23 24 GRANT语句小结 一次向一个用户授权 例1 这是最简单的一种授权操作 一次向多个用户授权 例2 例3 一次传播多个同类对象的权限 例2 一次可以完成对基本表 视图和属性列这些不同对象的授权 例4 25 2 SQL收回权限的功能 REVOKE语句的一般格式为 REVOKE ON FROM 功能 从指定用户那里收回对指定对象的指定权限 26 例6把用户U4修改学生学号的权限收回REVOKEUPDATE Sno ONTABLEStudentFROMU4 例7收回所有用户对表SC的查询权限REVOKESELECTONTABLESCFROMPUBLIC 例8把用户U5对SC表的INSERT权限收回REVOKEINSERTONTABLESCFROMU5 27 28 小结 SQL灵活的授权机制 DBA 拥有所有对象的所有权限不同的权限授予不同的用户用户 拥有自己建立的对象的全部的操作权限GRANT 授予其他用户被授权的用户 继续授权 许可 再授予所有授予出去的权力在必要时又都可用REVOKE语句收回 29 优点能够通过授权机制有效地控制其他用户对敏感数据的存取缺点可能存在数据的 无意泄露 原因 这种机制仅仅通过对数据的存取权限来进行安全控制 而数据本身并无安全性标记 解决 对系统控制下的所有主客体实施强制存取控制策略 30 二 强制存取控制方法 MAC 保证更高程度的安全性用户不能直接感知或进行控制适用于对数据有严格而固定密级分类的部门军事部门政府部门在通用数据库系统中不十分有用 只是某些专用系统中才有用 31 主体是系统中的活动实体DBMS所管理的实际用户代表用户的各进程客体是系统中的被动实体 是受主体操纵的文件基表索引视图 32 敏感度标记 Label 绝密 TopSecret 机密 Secret 可信 Confidential 公开 Public 主体的敏感度标记称为许可证级别 ClearanceLevel 客体的敏感度标记称为密级 ClassificationLevel 33 强制存取控制规则 1 仅当主体的许可证级别大于或等于客体的密级时 该主体才能读取相应的客体 2 仅当主体的许可证级别小于或等于客体的密级时 该主体才能写相应的客体 34 规则的共同点 禁止了拥有高许可证级别的主体更新低密级的数据对象防止数据的密级从高流到低 造成数据泄漏 35 MAC与DAC 实现MAC时要首先实现DAC原因 较高安全性级别提供的安全保护要包含较低级别的所有保护DAC与MAC共同构成DBMS的安全机制 36 4 1数据库安全性控制 4 1 1用户标识与鉴别4 1 2存取控制4 1 3数据库角色 37 数据库角色 被命名的一组与数据库操作相关的权限角色是权限的集合可以为一组具有相同权限的用户创建一个角色简化授权的过程 38 一 角色的创建CREATEROLE 二 给角色授权GRANT ON对象名TO 39 三 将一个角色授予其他的角色或用户GRANT TO WITHADMINOPTION 四 角色权限的收回REVOKE ONFROM 例9通过角色来实现将一组权限授予一组用户 首先 创建一个角色R1CreateroleR1 然后 使用Grant语句 使角色R1拥有Student表的Select Insert和Delete权限 GrantSelect Insert DeleteOnStudenttoR1 40 将这个角色授予王平 张明 赵玲 使他们具有角色R1所包含的全部权限 GrantR1to王平 张明 赵玲 可以一次性地回收王平的这三个权限RevokeR1from王平 41 42 第四章数据库安全性 4 1数据库安全性控制4 2视图机制 略 4 3审计 Audit 4 4数据加密 43 4 2视图机制 把要保密的数据对无权存取这些数据的用户隐藏起来 对数据提供一定程度的安全保护主要功能是提供数据独立性 无法完全满足要求间接实现了支持存取谓词的用户权限定义 44 例10建立计算机系学生的视图 把对该视图的SELECT权限授于王平 把该视图上的所有操作权限授于张明先建立计算机系学生的视图CS StudentCREATEVIEWCS StudentASSELECT FROMStudentWHERESdept CS 45 在视图上进一步定义存取权限GRANTSELECTONCS StudentTO王平 GRANTALLPRIVILIGESONCS StudentTO张明 46 4 3审计 什么是审计审计日志 AuditLog 将用户对数据库的所有操作记录在上面DBA利用审计日志找出非法存取数据的人 时间和内容C2以上安全级别的DBMS必须具有审计在SQLServer2005中没有 47 审计分为 用户级审计针对自己创建的数据库表或视图进行审计记录所有用户对这些表或视图的一切成功和 或 不成功的访问要求以及各种类型的SQL操作系统级审计DBA设置监测成功或失败的登录要求监测GRANT和REVOKE操作以及其他数据库级权限下的操作 48 AUDIT语句 设置审计功能NOAUDIT语句 取消审计功能 49 例11对修改SC表结构或修改SC表数据的操作进行审计AUDITALTER UPDATEONSC 例12取消对SC表的一切审计NOAUDITALTER UPDATEONSC 注 SQLServer2005 2008不支持此语句 50 4 4数据加密 防止数据库中数据在存储和传输中失密的有效手段加密的基本思想根据一定的算法将原始数据 术语为明文 Plaintext 变换为不可直接识别的格式 术语为密文 Ciphertext 不知道解密算法的人无法获知数据的内容分类存储加密和传输加密 51 加密方法替换方法使用密钥 EncryptionKey 将明文中的每一个字符转换为密文中的一个字符置换方法将明文的字符按不同的顺序重新排列混合方法美国1977年制定的官方加密标准 数据加密标准 DataEncryptionStandard 简称DES 52 DBMS中的数据加密有些数据库产品提供了数据加密例行程序有些数据库产品本身未提供加密程序 但提供了接口数据加密功能通常也作为可选特征 允许用户自由选择数据加密与解密是比较费时的操作数据加密与解密程序会占用大量系统资源应该只对高度机密的数据加密 53 本章小结 数据的共享日益加强 数据的安全保密越来越重要DBMS是管理数据的核心 因而其自身必须具有一整套完整而有效的安全性机制 54 实现数据库系统安全性的技术和方法存取控制技术视图技术审计技术自主存取控制功能通过SQL的GRANT语句和REVOKE语句实现角色使用角色来管理数据库权限可以简化授权过程CREATEROLE语句创建角色GRANT语句给角色授权 55 SQLServer2005安全与权限 SQLServer2005为维护数据库系统的安全性提供了完善的管理机制和简单而丰富的操作方法 SQLServer2005的安全性机制SQLServer2005的登录和用户SQLServer2005的权限管理SQLServer2005的角色管理SQLServer2005其他安全性管理 56 1 SQLServer2005的安全性机制 分层机制来进行权限管理安全性管理分为操作系统 SQLServer和数据库3个等级 详细的权限层次和安全机制如右图所示 57 1 操作系统级的安全性 在用户使用客户端计算机通过网络实现对SQLServer2005服务器的访问时 首先要获得计算机操作系统的使用权限 操作系统安全性是操作系统管理员或网络管理员的任务 由于SQLServer2005采用了集成WindowsNT网络安全性的机制 所以既提高了操作系统的安全性 又提高了管理数据库系统安全性的灵活性 58 2 SQLServer级的安全性 建立在控制服务器登录账户和密码的基础上的 采用了标准SQLServer登录和集成WindowsNT登录两种方式 无论使用哪种登录方式 用户在登录时提供的登录账户和密码 决定了用户能否获得SQLServer2005的访问权 以及在获得访问权后 用户在访问SQLServer2005进程时可以拥有的权利 59 3 数据库级的安全性 在用户通过SQLServer服务器的安全性检查后 直接面对不同的数据库入口 在建立用户的登录账户信息时 SQLServer2005会提示用户选择默认的数据库 以后用户每次连接上SQLServer2005服务器后 都会自动连接到默认的数据库上 在默认的情况下 只有数据库的拥有者才可以访问该数据库的对象 数据库的拥有者可以分配访问权限给别的用户 在SQLServer2005中并不是所有权限都可以转让和分配的 60 2 SQLServer2005的登录和用户 用于连接到SQLServer2005服务器的账户都称为SQLServer的登录 要创建用户 必须已经定义了该用户的登录 用户ID同登录类似 但是它的名称不需要与登录相同 用户可以防止数据被未授权的用户故意或无意地修改 SQLServer2005为每一个用户分配了唯一的用户名和密码 可以为不同账号的用户授予不同的安全级别 61 登录名可以是如下两种类型 Windows身份验证 SQLServer身份验证 登录属于SQLServer2005服务器级的安全策略 要连接到数据库 首先要存在一个合法的登录 用户是SQLServer2005数据库级的安全策略 在为数据库创建新的用户前 必须存在一个有效的登录 62 3 SQLServer2005的权限管理 权限用于控制对数据库对象的访问 以及指定用户对数据库可以执行的操作 用户可

温馨提示

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

评论

0/150

提交评论