第04讲 数据库安全性 v.2014_第1页
第04讲 数据库安全性 v.2014_第2页
第04讲 数据库安全性 v.2014_第3页
第04讲 数据库安全性 v.2014_第4页
第04讲 数据库安全性 v.2014_第5页
已阅读5页,还剩73页未读 继续免费阅读

下载本文档

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

文档简介

1、学以致用学以致用 用以促学用以促学 DATABASEHUST 数据库系统原理数据库系统原理 第四讲第四讲 数据库安全性数据库安全性 学以致用学以致用 用以促学用以促学 DATABASEHUST 数据库安全性数据库安全性 v 问题的提出问题的提出 n 数据库的一大特点:数据库的一大特点:数据共享数据共享,但数据共享必然带来数据库的安全性但数据共享必然带来数据库的安全性 问题;问题; n 数据库系统中的数据共享是在数据库系统中的数据共享是在DBMSDBMS统一的严格的控制之下的共享,即统一的严格的控制之下的共享,即 只允许有合法使用权限的用户访问允许他存取的数据只允许有合法使用权限的用户访问允许他

2、存取的数据; n 数据库系统的安全保护措施是否有效是数据库系统主要的性能指标之一;数据库系统的安全保护措施是否有效是数据库系统主要的性能指标之一; n 数据库的安全性和计算机系统的安全是紧密联系、互相支持的;数据库的安全性和计算机系统的安全是紧密联系、互相支持的; 数据库安全性数据库安全性 学以致用学以致用 用以促学用以促学 DATABASEHUST 第四讲第四讲 数据库安全数据库安全性性 1. 数据库数据库安全性安全性概述概述 2. 数据库安全数据库安全性控制性控制 3. 视图视图机制机制 4. 审计审计 5. 数据加密数据加密 6. 其它安全性保护其它安全性保护 学以致用学以致用 用以促学

3、用以促学 DATABASEHUST 1. 计算机安全计算机安全性概述性概述 1.1 数据库的不安全因素数据库的不安全因素 1.2 安全标准安全标准简介简介 学以致用学以致用 用以促学用以促学 DATABASEHUST 1.1 数据库的不数据库的不安全安全因素因素 v 1)非授权用户对数据库的恶意存取和破坏)非授权用户对数据库的恶意存取和破坏 一些黑客和犯罪分子在用户存取数据库时猎取用户名和 口令,假冒合法用户偷取、修改或者破坏用户数据。因 此必须阻止有损数据库安全的非法操作,以保证数据免 受未经授权的访问和破坏,数据库管理系统提供的安全 措施主要包括“用户身份鉴别用户身份鉴别”、“存取控制存取

4、控制”和“视视 图图”等技术。 学以致用学以致用 用以促学用以促学 DATABASEHUST 1.1 数据库的不数据库的不安全安全因素因素 v 2)数据库中重要或者敏感的数据被泄露)数据库中重要或者敏感的数据被泄露 黑客盗取数据库中的重要数据,使得一些机密信息被暴漏。 以防止数据泄露,数据库管理系统提供的主要技术有“强强 制存取控制制存取控制”、“数据加密存储数据加密存储”和和“加密传输加密传输”。 安全性要求较高的部门提供审计功能,通过分析审计日志, 可以对潜在的威胁提前采取措施加以防范,非授权用户的 入侵 行为及信息破坏能够进行跟踪。 学以致用学以致用 用以促学用以促学 DATABASEH

5、UST 1.1 数据库的不数据库的不安全安全因素因素 v 3)安全环境的脆弱性)安全环境的脆弱性 数据库的安全性与与计算机系统的安全性(包括计算机 硬件、操作系统网络系统)是紧密联系的。操作系统安 全的脆弱、网络协议安全保障的不足等都会造成数据库 安全性的破坏。 学以致用学以致用 用以促学用以促学 DATABASEHUST 1.2 安全标准安全标准简介简介 l TCSEC标准标准(Trusted Computer System Evaluation Criteria ) l CC标准标准 (Common Criteria) 学以致用学以致用 用以促学用以促学 DATABASEHUST 1.2

6、安全标准安全标准简介简介 信息安全标准的发展历史信息安全标准的发展历史 学以致用学以致用 用以促学用以促学 DATABASEHUST 1.2 安全标准安全标准简介简介 v TCSEC/TDI (Trusted Database Interpretation)标准标准的基本的基本 内容内容 TCSEC/TDI,从四个方面四个方面来描述安全性级别划分的指标 安全策略安全策略 责任责任 保证保证 文档文档 学以致用学以致用 用以促学用以促学 DATABASEHUST TCSEC/TDITCSEC/TDI安全级别划分安全级别划分 安安 全全 级级 别别 定定 义义 A1验证设计验证设计 B3安全域安全

7、域 B2结构化保护结构化保护 B1标记安全保护标记安全保护 C2受控的存取保护受控的存取保护 C1 自主安全保护自主安全保护 D最小保护最小保护 按系统可靠或按系统可靠或 可信程度逐渐可信程度逐渐 增高增高 各安全级别之各安全级别之 间:偏序向下间:偏序向下 兼容兼容 学以致用学以致用 用以促学用以促学 DATABASEHUST TCSEC/TCSEC/TDITDI安全级别安全级别 n D D级级 u 将一切不符合更高标准的系统均归于D组 u 典型例子:DOS是安全标准为D的操作系统, DOS在安全性方面几乎没有什么专 门的机制来保障 n C1C1级级 u 非常初级的自主安全保护,能够实现对用

8、户和数据的分离,进行自主存取控制 (DAC),保护或限制用户权限的传播。 n C2C2级级 u 安全产品的最低档次; u 提供受控的存取保护,将C1级的DAC进一步细化,以个人身份注册负责,并实施 审计和资源隔离; u 达到C2级的产品在其名称中往往不突出“安全”(Security)这一特色。 u 典型例子 l 操作系统:Microsoft的Windows NT 3.5 l 数据库:Oracle公司的Oracle 7,Sybase公司的 SQL Server 11.0.6 学以致用学以致用 用以促学用以促学 DATABASEHUST TCSEC/TCSEC/TDITDI安全级别安全级别 n B

9、1级 u 标记安全保护。“安全”(Security)或“可信的”(Trusted)产品。 u 对系统的数据加以标记,对标记的主体和客体实施强制存取控制(MAC)、审计 等安全机制。 u 典型例子 l 数据库:数据库:Oracle公司的公司的Trusted Oracle 7,Sybase公司的公司的Secure SQL Server version 11.0.6,Informix公司的公司的Incorporated INFORMIX- OnLine / Secure 5.0 n B2级 u 结构化保护 u 建立形式化的安全策略模型并对系统内的所有主体和客体实施DAC和MAC。 u 经过认证的B2

10、级以上的安全系统非常稀少 u 典型例子 l 操作系统:操作系统:Trusted Information Systems公司的公司的Trusted XENIX一种产品一种产品 l 网络产品:网络产品:Cryptek Secure Communications公司的公司的LLC VSLAN一种产一种产 品品 l 数据库:没有符合数据库:没有符合B2标准的产品标准的产品 学以致用学以致用 用以促学用以促学 DATABASEHUST TCSEC/TCSEC/TDITDI安全级别安全级别 nB3B3级级 u安全域 u该级的TCB必须满足访问监控器的要求,审计跟踪能力更强,并提供 系统恢复过程。 nA1A

11、1级级 u验证设计:即提供B3级保护的同时给出系统的形式化设计说明和验 证以确信各安全保护真正实现 n说明:说明:B2B2以上的系统以上的系统 u还处于理论研究阶段; u应用多限于一些特殊的部门如军队等; u美国正在大力发展安全产品,试图将目前仅限于少数领域应用的B2 安全级别下放到商业应用中来,并逐步成为新的商业标准。 学以致用学以致用 用以促学用以促学 DATABASEHUST C C v C C C C 提出国际公认的表述信息技术安全性的结构提出国际公认的表述信息技术安全性的结构 把信息产品的安全要求分为把信息产品的安全要求分为 安全功能要求安全功能要求 安全保证要求安全保证要求 学以致

12、用学以致用 用以促学用以促学 DATABASEHUST C C v CC文本组成文本组成 简介和一般模型简介和一般模型 安全功能要求安全功能要求 安全保证要求安全保证要求 学以致用学以致用 用以促学用以促学 DATABASEHUST C C v CC评估保证级划分评估保证级划分 评估保证评估保证 级级 定义定义TCSEC安全级别(近似相安全级别(近似相 当)当) EAL1功能测试(功能测试(functionally tested) EAL2结构测试(结构测试(structurally tested)C1 EAL3系统地测试和检查(系统地测试和检查(methodically tested and

13、 checked)C2 EAL4系统地设计、测试和复查(系统地设计、测试和复查(methodically designed, tested, and reviewed) B1 EAL5半形式化设计和测试(半形式化设计和测试(semiformally designed and tested) B2 EAL6半形式化验证的设计和测试(半形式化验证的设计和测试(semiformally verified design and B3 tested) EAL7形式化验证的设计和测试(形式化验证的设计和测试(formally verified design and tested) A1 学以致用学以致用

14、用以促学用以促学 DATABASEHUST 第四讲第四讲 数据库安全性数据库安全性 1. 计算机安全计算机安全性概述性概述 2. 数据库安全数据库安全性控制性控制 3. 视图视图机制机制 4. 审计审计(Audit) 5. 数据加密数据加密 6. 统计统计数据库安全性数据库安全性 学以致用学以致用 用以促学用以促学 DATABASEHUST 2. 数据库安全数据库安全性控制概述性控制概述 v 非法使用数据库的情况非法使用数据库的情况 编写合法程序绕过编写合法程序绕过DBMS及其授权机制及其授权机制 直接或编写应用程序执行非授权操作直接或编写应用程序执行非授权操作 通过多次合法查询数据库从中推导

15、出一些保密数据通过多次合法查询数据库从中推导出一些保密数据 l计算机系统中,安全措施是一级一级层层设置计算机系统中,安全措施是一级一级层层设置 计算机系统的安全模型计算机系统的安全模型 学以致用学以致用 用以促学用以促学 DATABASEHUST 2. 数据库安全数据库安全性控制性控制 2.1 用户用户身份身份鉴别鉴别 2.2 存取控制存取控制 2.2.1 自主存取控制方法自主存取控制方法 2.2.2 强制存取控制强制存取控制 2.2.3 DAC与与MAC 学以致用学以致用 用以促学用以促学 DATABASEHUST 2.1 用户用户身份身份鉴别鉴别 v 用户标识与鉴别用户标识与鉴别 (Ide

16、ntification v 语义:将对指定操作对象的指定操作权限授予指定的用户语义:将对指定操作对象的指定操作权限授予指定的用户 学以致用学以致用 用以促学用以促学 DATABASEHUST 2.2.1 自主自主存取控制方法存取控制方法 v 关系数据库系统中存取控制对象关系数据库系统中存取控制对象 对象对象 类型类型 对象对象操操 作作 类类 型型 数据库数据库模式模式CREATE SCHEMA 基本表基本表CREATE TABLE,ALTER TABLE 模式模式视图视图CREATE VIEW 索引索引CREATE INDEX 数据数据基本表和视基本表和视 图图 SELECT,INSERT,

17、UPDATE,DELETE, REFERENCES, ALL PRIVILEGES 数据数据属性列属性列SELECT,INSERT,UPDATE, REFERENCES ALL PRIVILEGES 关系数据库系统中的存取权限关系数据库系统中的存取权限 学以致用学以致用 用以促学用以促学 DATABASEHUST 2.2.1 自主存取控制方法自主存取控制方法授权授权GRANTGRANT 发出发出GRANTGRANT: DBA 数据库对象创建者(即属主数据库对象创建者(即属主Owner) 拥有该权限的用户拥有该权限的用户 按受权限的用户按受权限的用户 一个或多个具体用户一个或多个具体用户 PUB

18、LIC(全体用户)(全体用户) 学以致用学以致用 用以促学用以促学 DATABASEHUST 2.2.1 自主存取控制方法自主存取控制方法授权授权GRANTGRANT v WITH GRANT OPTION子句子句: 指定:指定:可以可以再授予再授予 没有指定:没有指定:不能传播不能传播 v 不允许循环授权不允许循环授权 学以致用学以致用 用以促学用以促学 DATABASEHUST 2.2.1 自主存取控制方法自主存取控制方法授权授权GRANTGRANT 访问数据的权限:访问数据的权限: SELECT(读取权限):(读取权限):允许读数据,但不能修改数据。 INSERT(插入权限):(插入权限

19、):允许插入一条新的数据,但不能修改已有数 据。 UPDATE(修改权限):(修改权限):允许修改数据,但不能删除数据。 DELETE(删除权限):(删除权限):允许删除数据。 修改数据库模式(修改数据库模式(SQL92标准)的权限:标准)的权限: Index(索引权限):(索引权限):允许建立或删除索引。 Create(创建权限):(创建权限):允许建立新的关系表。 Alter(修改权限):(修改权限):允许对关系表中的属性进行增加、删除。 Drop(删除权限):(删除权限):允许删除关系表。 学以致用学以致用 用以促学用以促学 DATABASEHUST 2.2.1 自主存取控制方法自主存取

20、控制方法授权授权GRANTGRANT 【例例】 把查询把查询StudentStudent表权限授给用户表权限授给用户U1U1 GRANT SELECT ON TABLE Student TO U1; 【例例】 GRANT ALL PRIVILIGES ON TABLE Student, Course TO U2, U3; 把对把对Student表和表和Course表的全部权限授予用户表的全部权限授予用户U2和和U3 学以致用学以致用 用以促学用以促学 DATABASEHUST 2.2.1 自主存取控制方法自主存取控制方法授权授权GRANTGRANT 【例例】 把对表把对表SC的查询权限授予所有

21、用户的查询权限授予所有用户 GRANT SELECT ON TABLE SC TO PUBLIC; 【例例】 把查询把查询Student表和修改学生学号的权限授给用户表和修改学生学号的权限授给用户U4 GRANT UPDATE(Sno), SELECT ON TABLE Student TO U4; 对属性列的授权时必须明确指出相应属性列名对属性列的授权时必须明确指出相应属性列名 学以致用学以致用 用以促学用以促学 DATABASEHUST 2.2.1 自主存取控制方法自主存取控制方法回收回收(REVOKEREVOKE) 二、二、REVOKE 授予的权限可以由授予的权限可以由DBA或其他授权者

22、用或其他授权者用REVOKE语句语句 收回收回 REVOKE语句的一般格式为:语句的一般格式为: REVOKE ,. ON FROM ,.; 学以致用学以致用 用以促学用以促学 DATABASEHUST 2.2.1 自主存取控制方法自主存取控制方法 传播传播权限权限 【例例5】 把对表把对表SC的的INSERT权限授予权限授予U5用户,并允许他用户,并允许他 再将此权限授予其他用户再将此权限授予其他用户 GRANT INSERT ON TABLE SC TO U5 WITH GRANT OPTION; 执行该执行该 语句后,语句后,U5不仅拥有了对表不仅拥有了对表SC的的INSERT权限,权限

23、, 还可以传播此权限:还可以传播此权限: 【例【例6 6】 GRANT INSERT ON TABLE SC TO U6 WITH GRANT OPTION; 同样,同样,U6还可以将此权限授予还可以将此权限授予U7: 【例【例7 7】 GRANT INSERT ON TABLE SC TO U7; 但但U7不能再传播此权限。不能再传播此权限。 学以致用学以致用 用以促学用以促学 DATABASEHUST 2.2.1 自主存取控制方法自主存取控制方法回收回收(REVOKEREVOKE) 【例】【例】 把用户把用户U4修改学生学号的权限收回修改学生学号的权限收回 REVOKE UPDATE(Sn

24、o) ON TABLE Student FROM U4; 【例】【例】 收回所有用户对表收回所有用户对表SC的查询权限的查询权限 REVOKE SELECT ON TABLE SC FROM PUBLIC; 学以致用学以致用 用以促学用以促学 DATABASEHUST 2.2.1 自主存取控制方法自主存取控制方法回收回收(REVOKEREVOKE) 【例】【例】 把用户把用户U5对对SC表的表的INSERT权限被收回权限被收回 REVOKE INSERT ON TABLE SC FROM U5 CASCADE ; 将用户将用户U5的的INSERT权限收回的时候必须级联(权限收回的时候必须级联(

25、CASCADE)收回)收回 系统只收回直接或间接从系统只收回直接或间接从U5处获得的权限处获得的权限 学以致用学以致用 用以促学用以促学 DATABASEHUST 小结小结:SQL:SQL灵活的授权机制灵活的授权机制 v DBA:拥有所有对象的所有权限:拥有所有对象的所有权限 不同的权限授予不同的用户不同的权限授予不同的用户 v 用户:拥有自己建立的对象的全部的操作权限用户:拥有自己建立的对象的全部的操作权限 GRANT:授予其他用户:授予其他用户 v 被授权的用户被授权的用户 “继续授权继续授权”许可:再授予许可:再授予 v 所有授予出去的权力在必要时又都可用所有授予出去的权力在必要时又都可

26、用REVOKE语句收回语句收回 学以致用学以致用 用以促学用以促学 DATABASEHUST 2.2.1 自主自主存取控制存取控制方法方法 创建数据库模式的权限创建数据库模式的权限 对对创建创建数据库模式数据库模式一类的数据库对象一类的数据库对象的的授权由授权由DBA在创在创 建用户时实现建用户时实现 CREATE USER语句格式语句格式 CREATE USER WITHDBA | RESOURCE | CONNECT 只有只有系统的超级用户才有权创建一个新的数据库用户系统的超级用户才有权创建一个新的数据库用户 学以致用学以致用 用以促学用以促学 DATABASEHUST 2.2.1 自主存

27、取控制方法自主存取控制方法 创建数据库模式的权限创建数据库模式的权限 n 具有具有CONNECTCONNECT特权的用户特权的用户 u 不能创建新用户,態创建模式和基本表,不能创建新用户,態创建模式和基本表,可以可以与数据库连接,能根据授权进行数与数据库连接,能根据授权进行数 据库中数据的查询、更新,能创建视图。据库中数据的查询、更新,能创建视图。 n 具有具有RESOURCERESOURCE特权的用户特权的用户 u 除具有除具有CONNECTCONNECT特权外,还能创建表、索引,修改表结构,能将自己创建的数据特权外,还能创建表、索引,修改表结构,能将自己创建的数据 对象的访问权授予其他用户

28、或从其他用户那儿收回,对自己创建的数据对象能进对象的访问权授予其他用户或从其他用户那儿收回,对自己创建的数据对象能进 行跟踪审查。行跟踪审查。 n 具有具有DBADBA特权的用户特权的用户 u 能进行所有的数据库操作。能进行所有的数据库操作。 拥有的权限拥有的权限 可否执行的操作可否执行的操作 CREATE USER CREATE SCHEMA CREATE TABLE 登录数据库登录数据库 执行数据查询执行数据查询 和操纵和操纵 DBA可以可以可以可以可以可以可以可以 RESOURCE不可以不可以不可以不可以可以可以可以可以 CONNECT不可以不可以不可以不可以不可以不可以可以,但必须拥有

29、相应权限可以,但必须拥有相应权限 权限与可执行的操作对照表权限与可执行的操作对照表 学以致用学以致用 用以促学用以促学 DATABASEHUST 2.2.1 自主存取控制自主存取控制方法方法数据库数据库角色角色 v数据库角色:数据库角色:被命名的一组与数据库操作相关的权限 角色是权限的集合角色是权限的集合 可以为一组具有相同权限的用户创建一个角色可以为一组具有相同权限的用户创建一个角色 使用角色来管理数据库权限可以简化授权的过程使用角色来管理数据库权限可以简化授权的过程 学以致用学以致用 用以促学用以促学 DATABASEHUST 2.2.1 自主存取控制方法自主存取控制方法数据库角色数据库角

30、色 v 1 1、角色的创建、角色的创建 CREATE ROLE v 2 2、对角色授权、对角色授权 GRANT , ON 对象名对象名 TO , 学以致用学以致用 用以促学用以促学 DATABASEHUST 2.2.1 自主存取控制方法自主存取控制方法数据库角色数据库角色 v 3 3、将一个角色授予其他的角色或用户、将一个角色授予其他的角色或用户 GRANT GRANT 1, 2 TO TO 3, 1 WITH ADMIN OPTIONWITH ADMIN OPTION v 4 4、角色权限的收回、角色权限的收回 REVOKE REVOKE , ON ON FROM FROM , 学以致用学以

31、致用 用以促学用以促学 DATABASEHUST 2.2.1 自主存取控制方法自主存取控制方法数据库角色数据库角色 【例】通过角色来实现将一组权限授予一个用户。【例】通过角色来实现将一组权限授予一个用户。 1. 首先创建一个角色首先创建一个角色 R1 CREATE ROLE R1; 2. 然后使用然后使用GRANT语句,使角色语句,使角色R1拥有拥有Student表的表的SELECT、 UPDATE、INSERT权限 GRANT SELECT,UPDATE,INSERT ON TABLE Student TO R1; 学以致用学以致用 用以促学用以促学 DATABASEHUST 2.2.1 自

32、主存取控制方法自主存取控制方法数据库角色数据库角色 3. 将这个角色授予将这个角色授予U1,U2,U3。使他们具有角色。使他们具有角色 R1所包含的全部权限所包含的全部权限 GRANT R1 TO U1,U2,U3; 4. 可以一次性通过可以一次性通过R1来回收来回收U1的这的这3个权限个权限 REVOKE R1 FROM U1; 学以致用学以致用 用以促学用以促学 DATABASEHUST 2.2.1 自主存取控制方法自主存取控制方法数据库角色数据库角色 【例】角色的权限修改,使角色【例】角色的权限修改,使角色R1在原来的基础上增加了在原来的基础上增加了 对对student表的表的delet

33、e权限权限 GRANT DELETE ON TABLE Student TO R1 【例】【例】 REVOKE SELECT ON TABLE Student FROM R1; 使使R1减少了减少了select 权限权限 学以致用学以致用 用以促学用以促学 DATABASEHUST 自主存取控制缺点自主存取控制缺点: : v 可能存在数据的可能存在数据的“无意泄露无意泄露” v 原因:这种机制仅仅通过对数据的存取权限来进行安原因:这种机制仅仅通过对数据的存取权限来进行安 全控制,而数据本身并无安全性标记全控制,而数据本身并无安全性标记 v 解决:对系统控制下的所有主客体实施强制存取控制解决:对系统控制下的所有主客体实施强制存取控制 策略策略 2.2.1 自主自主存取控制方法存取控制方法的缺点的缺点 学以致用学以致用 用以促学用以促学 DATABASEHUST 2.2.2 强制强制存取控制方法存取控制方法 v强制存取控制(强制存取控制(MAC)MAC) 保证更高程度的安全性保证更高程度的安全性 用户能不能直接感知或进行控制用户能不能直接感知或进行控制 适用于对数据有严格而固定密级分类的部门适用于对数据有严格而固定密

温馨提示

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

评论

0/150

提交评论