数据库讲义第四章

上传人:沈*** 文档编号:154858835 上传时间:2022-09-21 格式:PPT 页数:46 大小:230KB
返回 下载 相关 举报
数据库讲义第四章_第1页
第1页 / 共46页
数据库讲义第四章_第2页
第2页 / 共46页
数据库讲义第四章_第3页
第3页 / 共46页
点击查看更多>>
资源描述
数据库系统概论数据库系统概论An Introduction to Database System第四章第四章 数据库安全性数据库安全性2022-9-211数据库讲义第四章2022-9-212022-9-21第四章第四章 数据库安全性数据库安全性 问题的提出问题的提出 数据库的一大特点是数据可以共享数据库的一大特点是数据可以共享 但数据共享必然带来数据库的安全性问题但数据共享必然带来数据库的安全性问题 数据库系统中的数据共享不能是无条件的共享数据库系统中的数据共享不能是无条件的共享例:军事秘密、国家机密、新产品实验数据、例:军事秘密、国家机密、新产品实验数据、市场需求分析、市场营销策略、销售计市场需求分析、市场营销策略、销售计 划、客户档案、医疗档案、银行储蓄数据划、客户档案、医疗档案、银行储蓄数据2022-9-212022-9-21数据库安全性(续)数据库安全性(续)什么是数据库的安全性什么是数据库的安全性 数据库的安全性是指保护数据库,防止因用户数据库的安全性是指保护数据库,防止因用户非法使用数据库造成数据泄露、更改或破坏。非法使用数据库造成数据泄露、更改或破坏。各系统安全性之间是相互紧密联系、相互各系统安全性之间是相互紧密联系、相互支持的支持的2022-9-212022-9-21第四章第四章 数据库安全性数据库安全性4.1 计算机安全性概论计算机安全性概论4.2 数据库安全性控制数据库安全性控制4.3视图机制视图机制4.4审计审计4.5 数据加密数据加密4.6统计数据库安全性统计数据库安全性4.7 小结小结2022-9-212022-9-214.2 数据库安全性控制数据库安全性控制4.2.1 用户标识与鉴别用户标识与鉴别4.2.2 存取控制存取控制4.2.3 自主存取控制方法自主存取控制方法4.2.4 授权与回收授权与回收4.2.5 数据库角色数据库角色4.2.6 强制存取控制方法强制存取控制方法2022-9-212022-9-21计算机系统中的安全模型计算机系统中的安全模型 应用应用DBMSOS DB 低低 高高安全性控制层次安全性控制层次 方法:方法:用户标识用户标识和鉴定和鉴定 存取控制存取控制审计审计视图视图 操作系统操作系统 安全保护安全保护 密码存储密码存储 2022-9-212022-9-214.2.1 用户标识与鉴别用户标识与鉴别 用户标识与鉴别(用户标识与鉴别(Identification&Authentication)系统提供的最外层安全保护措施系统提供的最外层安全保护措施2022-9-212022-9-21用户标识与鉴别用户标识与鉴别基本方法基本方法 系统提供一定的方式让用户标识自己的名字或身份;系统提供一定的方式让用户标识自己的名字或身份;系统内部记录着所有合法用户的标识;系统内部记录着所有合法用户的标识;每次用户要求进入系统时,由系统核对用户提供的每次用户要求进入系统时,由系统核对用户提供的身份标识;身份标识;通过鉴定后才提供机器使用权。通过鉴定后才提供机器使用权。用户标识和鉴定可以重复多次用户标识和鉴定可以重复多次2022-9-212022-9-21用户标识自己的名字或身份用户标识自己的名字或身份 用户名用户名/口令口令 简单易行,容易被人窃取简单易行,容易被人窃取 每个用户预先约定好一个计算过程或者函数每个用户预先约定好一个计算过程或者函数 系统提供一个随机数系统提供一个随机数 用户根据自己预先约定的计算过程或者函数进用户根据自己预先约定的计算过程或者函数进行计算行计算 系统根据用户计算结果是否正确鉴定用户身份系统根据用户计算结果是否正确鉴定用户身份2022-9-212022-9-214.2.2 存取控制存取控制 存取控制机制的功能存取控制机制的功能存取控制机制的组成存取控制机制的组成 定义存取权限 检查存取权限用户权限定义和合法权检查机制一起组成了DBMS的安全子系统2022-9-212022-9-21存取控制(续)存取控制(续)定义存取权限定义存取权限 在数据库系统中,为了保证用户只能访问他有权存取的数据,必须预先对每个用户定义存取权限。检查存取权限检查存取权限 对于通过鉴定获得上机权的用户(即合法用户),系统根据他的存取权限定义对他的各种操作请求进行控制,确保他只执行合法操作。2022-9-212022-9-21存取控制(续)存取控制(续)常用存取控制方法常用存取控制方法1.自主存取控制(自主存取控制(Discretionary Access Control,简称,简称DAC)2.强制存取控制(强制存取控制(Mandatory Access Control,简称简称 MAC)2022-9-212022-9-211.自主存取控制方法自主存取控制方法 同一用户对于不同的数据对象有不同的存取同一用户对于不同的数据对象有不同的存取权限权限 不同的用户对同一对象也有不同的权限不同的用户对同一对象也有不同的权限 用户还可将其拥有的存取权限转授给其他用用户还可将其拥有的存取权限转授给其他用户户2022-9-212022-9-212.强制存取控制方法强制存取控制方法 每一个数据对象被标以一定的密级每一个数据对象被标以一定的密级 每一个用户也被授予某一个级别的许可证每一个用户也被授予某一个级别的许可证 对于任意一个对象,只有具有合法许可证对于任意一个对象,只有具有合法许可证的用户才可以存取的用户才可以存取2022-9-212022-9-214.2.3自主存取控制方法自主存取控制方法 优点优点 能够通过授权机制有效地控制其他用户对敏感数据的存取 缺点缺点 可能存在数据的“无意泄露”原因:这种机制仅仅通过对数据的存取权限来进行安全控制,而数据本身并无安全性标记。解决:对系统控制下的所有主客体实施强制存取控制策略2022-9-212022-9-214.2.4 授权与回收授权与回收 谁定义?谁定义?DBADBA和表的建立者(即表的属主)和表的建立者(即表的属主)如何定义?如何定义?SQL语句:语句:GRANT 及及 REVOKE2022-9-212022-9-21一一 授授 权权(GRANT)GRANTGRANT语句的一般格式:语句的一般格式:GRANT GRANT,.ON ON TO TO,.WITH GRANT OPTION;WITH GRANT OPTION;谁定义?谁定义?DBADBA和表的建立者(即表的属主)和表的建立者(即表的属主)GRANT功能:将对指定操作对象的指定操作权功能:将对指定操作对象的指定操作权限授予指定的用户限授予指定的用户。2022-9-212022-9-21(1)用户的权限用户的权限 建表(建表(CREATE TABLECREATE TABLE)的权限)的权限:属于属于DBADBA DBADBA授予授予-普通用户普通用户 基本表或视图的属主拥有对该表或视图的基本表或视图的属主拥有对该表或视图的一切操作权限一切操作权限 接受权限的用户接受权限的用户:一个或多个具体用户一个或多个具体用户 PUBLICPUBLIC(全体用户)(全体用户)2022-9-212022-9-21(2)WITH GRANT OPTION(2)WITH GRANT OPTION子句子句 指定了指定了WITH GRANT OPTIONWITH GRANT OPTION子句子句:获得某种权限的用户还可以把这种权获得某种权限的用户还可以把这种权限再授予别的用户。限再授予别的用户。没有指定没有指定WITH GRANT OPTIONWITH GRANT OPTION子句子句:获得某种权限的用户只能使用该权限,获得某种权限的用户只能使用该权限,不能传播该权限不能传播该权限2022-9-212022-9-21例题例题 例例1 1 把查询把查询StudentStudent表权限授给用户表权限授给用户U1U1 GRANT SELECT ON S TO U1;2022-9-212022-9-21例题(续)例题(续)例例2 2 把对把对StudentStudent表和表和CourseCourse表的全部权限授表的全部权限授予用户予用户U2U2和和U3U3 GRANT ALL PRIVILEGES GRANT ALL PRIVILEGES ON S,C ON S,C TO U2,U3;TO U2,U3;只能单表授权。只能单表授权。2022-9-212022-9-21例题(续)例题(续)例例4 4 把查询把查询S S表和修改学生学号的权限授给用户表和修改学生学号的权限授给用户U4U4 GRANT UPDATE(Sno),SELECT GRANT UPDATE(Sno),SELECT ON SON STO U4;TO U4;2022-9-212022-9-21例题(续)例题(续)例例5 5 把对表把对表SCSC的的INSERTINSERT权限授予权限授予U5U5用户,用户,并并 允许他再将此权限授予其他用户允许他再将此权限授予其他用户 GRANT INSERT GRANT INSERT ON SC ON SC TO U5 TO U5 WITH GRANT OPTION;WITH GRANT OPTION;2022-9-212022-9-21传播权限传播权限 执行例执行例5 5后,后,U5U5不仅拥有了对表不仅拥有了对表SCSC的的INSERTINSERT权限,还可以传播此权限权限,还可以传播此权限:例例6 6 GRANT INSERT ON SC TO U6GRANT INSERT ON SC TO U6 WITH GRANT OPTION;WITH GRANT OPTION;同样,同样,U6U6还可以将此权限授予还可以将此权限授予U7U7:例例7 GRANT INSERT ON SC TO U7;7 GRANT INSERT ON SC TO U7;但但U7U7不能再传播此权限。不能再传播此权限。U5-U6-U7U5-U6-U72022-9-212022-9-21例题(续)例题(续)例例6 DBA6 DBA把在数据库把在数据库S_CS_C中建立表的权限授予中建立表的权限授予用户用户U8U8GRANT CREATETABGRANT CREATETABON DATABASE S_C ON DATABASE S_C TO U8;TO U8;GRANT CREATE TABLETO U82022-9-212022-9-21二二 收回权限收回权限(REVOKE)REVOKEREVOKE语句的一般格式为:语句的一般格式为:REVOKE REVOKE,.ON ON FROM FROM,.;.;功能:从指定用户那里收回对指定对象的指功能:从指定用户那里收回对指定对象的指定权限定权限2022-9-212022-9-21例题例题例例8 8 把用户把用户U4U4修改学生学号的权限收回修改学生学号的权限收回REVOKE UPDATE(Sno)REVOKE UPDATE(Sno)ON SON SFROM U4;FROM U4;2022-9-212022-9-21例题(续)例题(续)例例9 9 收回所有用户对表收回所有用户对表SCSC的查询权限的查询权限REVOKE SELECT REVOKE SELECT ON SC ON SC FROM PUBLIC;FROM PUBLIC;2022-9-212022-9-21例题(续)例题(续)例例10 10 把用户把用户U5U5对对SCSC表的表的INSERTINSERT权限收回权限收回REVOKE INSERT REVOKE INSERT ON SC ON SC FROM U5;FROM U5;2022-9-212022-9-21权限的级联回收权限的级联回收系统将收回直接或间接从系统将收回直接或间接从U5处获得的对处获得的对SC表的表的INSERT权限权限:-U5-U6-U7收回收回U5、U6、U7获得的对获得的对SC表的表的INSERT权限权限:-U5-U6-U72022-9-212022-9-214.2.5数据库角色数据库角色 数据库角色是被命名的一组与数据库操作相数据库角色是被命名的一组与数据库操作相关的权限关的权限,是权限的集合是权限的集合1)角色的创建角色的创建 EXEC SP_ADDROLE 2)给角色授权给角色授权 GRANT.ON.TO 3)将一个角色授予其他的角色或用户将一个角色授予其他的角色或用户4)角色权限的回收角色权限的回收 REVOKE.ONFROM 固定角色介绍2022-9-212022-9-214.2.6 强制存取控制方法强制存取控制方法 强制存取控制的特点强制存取控制的特点 P143 MAC是对数据本身进行密级标记是对数据本身进行密级标记 无论数据如何复制,标记与数据是一个不可分无论数据如何复制,标记与数据是一个不可分的整体的整体 只有符合密级标记要求的用户才可以操纵数据只有符合密级标记要求的用户才可以操纵数据 从而提供了更高级别的安全性从而提供了更高级别的安全性2022-9-212022-9-21MAC与与DAC DAC与与MAC共同构成共同构成DBMS的安全机制的安全机制原因:较高安全性级别提供的安全保护要原因:较高安全性级别提供的安全保护要包含较低级别的所有保护包含较低级别的所有保护 先进行先进行DAC检查,通过检查,通过DAC检查的数据对检查的数据对象再由系统进行象再由系统进行MAC检查,只有通过检查,只有通过MAC检查的数据对象方可存取。检查的数据对象方可存取。2022-9-212022-9-21强制存取控制方法(续)强制存取控制方法(续)DAC+MAC安全检查示意图安全检查示意图 SQL语法分析语法分析&语义检查语义检查 DAC 检检 查查 安全检查安全检查 MAC 检检 查查 继继 续续2022-9-212022-9-214.3 视图机制视图机制 视图机制把要保密的数据对无权存取这些数据的视图机制把要保密的数据对无权存取这些数据的用户隐藏起来,用户隐藏起来,视图机制更主要的功能在于提供数据独立性,其视图机制更主要的功能在于提供数据独立性,其安全保护功能太不精细,往往远不能达到应用系安全保护功能太不精细,往往远不能达到应用系统的要求。统的要求。2022-9-212022-9-21视图机制(续)视图机制(续)例:王平只能检索计算机系学生的信息例:王平只能检索计算机系学生的信息 先建立计算机系学生的视图先建立计算机系学生的视图CS_Student CREATE VIEW CS_Student AS SELECT FROM Student WHERE Sdept=CS;2022-9-212022-9-21视图机制(续)视图机制(续)在视图上进一步定义存取权限 GRANT SELECT ON CS_Student TO 王平;2022-9-212022-9-214.4 审计审计 什么是审计什么是审计 启用一个专用的审计日志(启用一个专用的审计日志(Audit Log)将用户对数据库的所有操作记录在上面将用户对数据库的所有操作记录在上面 DBA可以利用审计日志中的追踪信息可以利用审计日志中的追踪信息 找出非法存取数据的人找出非法存取数据的人 C2以上安全级别的以上安全级别的DBMS必须具有审计功能必须具有审计功能2022-9-212022-9-21审计(续)审计(续)审计功能的可选性审计功能的可选性 审计很费时间和空间审计很费时间和空间DBA可以根据应用对安全性的要求,灵活可以根据应用对安全性的要求,灵活地打开或关闭审计功能。地打开或关闭审计功能。2022-9-212022-9-21审计(续)审计(续)强制性机制强制性机制:用户识别和鉴定、存取控制、视图用户识别和鉴定、存取控制、视图 预防监测手段预防监测手段:审计技术审计技术2022-9-212022-9-214.5 数据加密数据加密 数据加密数据加密 防止数据库中数据在存储和传输中失密的有效防止数据库中数据在存储和传输中失密的有效手段手段 加密的基本思想加密的基本思想 根据一定的算法将原始数据(术语为明文,根据一定的算法将原始数据(术语为明文,Plain text)变换为不可直接识别的格式(术语)变换为不可直接识别的格式(术语为密文,为密文,Cipher text)不知道解密算法的人无法获知数据的内容不知道解密算法的人无法获知数据的内容2022-9-212022-9-21数据加密(续)数据加密(续)加密方法加密方法 替换方法替换方法 使用密钥(Encryption Key)将明文中的每一个字符转换为密文中的一个字符 置换方法置换方法 将明文的字符按不同的顺序重新排列 混合混合方法方法 美国美国1977年制定的官方加密标准:数据加密标准年制定的官方加密标准:数据加密标准(Data Encryption Standard,简称,简称DES)2022-9-212022-9-21数据加密(续)数据加密(续)数据加密功能通常也作为可选特征,允许用数据加密功能通常也作为可选特征,允许用户自由选择户自由选择 数据加密与解密是比较费时的操作数据加密与解密是比较费时的操作 数据加密与解密程序会占用大量系统资源数据加密与解密程序会占用大量系统资源 应该只对高度机密的数据加密应该只对高度机密的数据加密2022-9-212022-9-214.6 统计数据库安全性统计数据库安全性 统计数据库的特点统计数据库的特点 允许用户查询聚集类型的信息(例如合计、平允许用户查询聚集类型的信息(例如合计、平均值等)均值等)不允许查询单个记录信息不允许查询单个记录信息例:允许查询例:允许查询“程序员的平均工资是多少?程序员的平均工资是多少?”不允许查询不允许查询“程序员张勇的工资?程序员张勇的工资?”2022-9-212022-9-21统计数据库安全性(续)统计数据库安全性(续)统计数据库中特殊的安全性问题统计数据库中特殊的安全性问题 隐蔽的信息通道隐蔽的信息通道 从合法的查询中推导出不合法的信息从合法的查询中推导出不合法的信息2022-9-212022-9-21统计数据库安全性(续)统计数据库安全性(续)例例1:下面两个查询都是合法的:下面两个查询都是合法的:1本公司共有多少女高级程序员?2本公司女高级程序员的工资总额是多少?如果第一个查询的结果是如果第一个查询的结果是“1”,那么第二个查询的结果显然就是这个程序员的工那么第二个查询的结果显然就是这个程序员的工资数。资数。规则规则1:任何查询至少要涉及:任何查询至少要涉及N(N足够大足够大)个以上的记录个以上的记录
展开阅读全文
相关资源
相关搜索

最新文档


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


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

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


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