《最新四章数据库安全ppt课件.ppt》由会员分享,可在线阅读,更多相关《最新四章数据库安全ppt课件.ppt(40页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、进入夏天,少不了一个热字当头,电扇空调陆续登场,每逢此时,总会进入夏天,少不了一个热字当头,电扇空调陆续登场,每逢此时,总会想起那一把蒲扇。蒲扇,是记忆中的农村,夏季经常用的一件物品。记想起那一把蒲扇。蒲扇,是记忆中的农村,夏季经常用的一件物品。记忆中的故乡,每逢进入夏天,集市上最常见的便是蒲扇、凉席,不论男女老忆中的故乡,每逢进入夏天,集市上最常见的便是蒲扇、凉席,不论男女老少,个个手持一把,忽闪忽闪个不停,嘴里叨叨着少,个个手持一把,忽闪忽闪个不停,嘴里叨叨着“怎么这么热怎么这么热”,于是三,于是三五成群,聚在大树下,或站着,或随即坐在石头上,手持那把扇子,边唠嗑五成群,聚在大树下,或站着
2、,或随即坐在石头上,手持那把扇子,边唠嗑边乘凉。孩子们却在周围跑跑跳跳,热得满头大汗,不时听到边乘凉。孩子们却在周围跑跑跳跳,热得满头大汗,不时听到“强子,别跑强子,别跑了,快来我给你扇扇了,快来我给你扇扇”。孩子们才不听这一套,跑个没完,直到累气喘吁吁,。孩子们才不听这一套,跑个没完,直到累气喘吁吁,这才一跑一踮地围过了,这时母亲总是,好似生气的样子,边扇边训,这才一跑一踮地围过了,这时母亲总是,好似生气的样子,边扇边训,“你你看热的,跑什么?看热的,跑什么?”此时这把蒲扇,是那么凉快,那么的温馨幸福,有母亲此时这把蒲扇,是那么凉快,那么的温馨幸福,有母亲的味道!蒲扇是中国传统工艺品,在我国
3、已有三千年多年的历史。取材的味道!蒲扇是中国传统工艺品,在我国已有三千年多年的历史。取材于棕榈树,制作简单,方便携带,且蒲扇的表面光滑,因而,古人常会在上于棕榈树,制作简单,方便携带,且蒲扇的表面光滑,因而,古人常会在上面作画。古有棕扇、葵扇、蒲扇、蕉扇诸名,实即今日的蒲扇,江浙称之为面作画。古有棕扇、葵扇、蒲扇、蕉扇诸名,实即今日的蒲扇,江浙称之为芭蕉扇。六七十年代,人们最常用的就是这种,似圆非圆,轻巧又便宜的蒲芭蕉扇。六七十年代,人们最常用的就是这种,似圆非圆,轻巧又便宜的蒲扇。蒲扇流传至今,我的记忆中,它跨越了半个世纪,也走过了我们的扇。蒲扇流传至今,我的记忆中,它跨越了半个世纪,也走过
4、了我们的半个人生的轨迹,携带着特有的念想,一年年,一天天,流向长长的时间隧半个人生的轨迹,携带着特有的念想,一年年,一天天,流向长长的时间隧道,袅道,袅数据库系统概论数据库系统概论第四章第四章 数据库安全性数据库安全性数据库的一大特点是数据可以共享,但数据共享必然带来数据库数据库的一大特点是数据可以共享,但数据共享必然带来数据库的安全性问题;的安全性问题;数据库系统中的数据共享不能是无条件的共享;数据库系统中的数据共享不能是无条件的共享;例:军事秘密、例:军事秘密、 国家机密、国家机密、 新产品实验数据、新产品实验数据、 市场需求分析、市场营销策略、销售计划、市场需求分析、市场营销策略、销售计
5、划、 客户档案、客户档案、 医疗档案、医疗档案、 银行储蓄数据银行储蓄数据数据库中数据的共享是在数据库中数据的共享是在DBMS统一的严格的控制之下的共享,统一的严格的控制之下的共享,即只允许有合法使用权限的用户访问允许他存取的数据;即只允许有合法使用权限的用户访问允许他存取的数据;数据库系统的安全保护措施是否有效是数据库系统主要的性能指数据库系统的安全保护措施是否有效是数据库系统主要的性能指标之一。标之一。 问题的提出问题的提出v什么是数据库的安全性什么是数据库的安全性v什么是数据的保密什么是数据的保密数据库的安全性是指保护数据库,数据库的安全性是指保护数据库,防止因用户非法使用数据库造成数据
6、防止因用户非法使用数据库造成数据泄露、更改或破坏。泄露、更改或破坏。数据保密是指用户合法地访问到机数据保密是指用户合法地访问到机密数据后能否对这些数据保密。密数据后能否对这些数据保密。通过制订法律道德准则和政策法规通过制订法律道德准则和政策法规来保证。来保证。数据库系统概论数据库系统概论第四章第四章 数据库安全性数据库安全性数据库系统概论数据库系统概论第四章第四章 数据库安全性数据库安全性数据库系统概论数据库系统概论第四章第四章 数据库安全性数据库安全性数据库系统概论数据库系统概论第四章第四章 数据库安全性数据库安全性数据库系统概论数据库系统概论第四章第四章 数据库安全性数据库安全性数据库系统
7、概论数据库系统概论第四章第四章 数据库安全性数据库安全性数据库系统概论数据库系统概论第四章第四章 数据库安全性数据库安全性可信计算机系统评测标准可信计算机系统评测标准vC2级级安全产品的最低档次安全产品的最低档次提供受控的存取保护,将提供受控的存取保护,将C1级的级的DAC进一步细化,以个人身进一步细化,以个人身份注册负责,并实施审计和资源隔离份注册负责,并实施审计和资源隔离达到达到C2级的产品在其名称中往往不突出级的产品在其名称中往往不突出“安全安全”(Security)这这一特色一特色典型例子典型例子 操作系统操作系统 Microsoft的的Windows NT 3.5, 数字设备公司的数
8、字设备公司的Open VMS VAX 6.0和和6.1 数据库数据库 Oracle公司的公司的Oracle 7 Sybase公司的公司的 SQL Server 11.0.6数据库系统概论数据库系统概论第四章第四章 数据库安全性数据库安全性可信计算机系统评测标准可信计算机系统评测标准vB1级级标记安全保护。标记安全保护。“安全安全”(Security)或或“可信的可信的”(Trusted)产产品。品。对系统的数据加以标记,对标记的主体和客体实施强制存取对系统的数据加以标记,对标记的主体和客体实施强制存取控制(控制(MAC)、审计等安全机制)、审计等安全机制典型例子典型例子 操作系统操作系统 数字
9、设备公司的数字设备公司的SEVMS VAX Version 6.0 惠普公司的惠普公司的HP-UX BLS release 9.0.9+ 数据库数据库 Oracle公司的公司的Trusted Oracle 7 Sybase公司的公司的Secure SQL Server version 11.0.6 Informix公司的公司的Incorporated INFORMIX-OnLine / Secure 5.0数据库系统概论数据库系统概论第四章第四章 数据库安全性数据库安全性可信计算机系统评测标准可信计算机系统评测标准vB2级级结构化保护结构化保护建立形式化的安全策略模型并对系统内的所有主体和客体
10、实施建立形式化的安全策略模型并对系统内的所有主体和客体实施DAC和和MAC。经过认证的经过认证的B2级以上的安全系统非常稀少级以上的安全系统非常稀少典型例子典型例子 操作系统操作系统 只有只有Trusted Information Systems公司的公司的Trusted XENIX一种产品一种产品 标准的网络产品标准的网络产品 只有只有Cryptek Secure Communications公司的公司的LLC VSLAN一种产品一种产品 数据库数据库 没有符合没有符合B2标准的产品标准的产品数据库系统概论数据库系统概论第四章第四章 数据库安全性数据库安全性可信计算机系统评测标准可信计算机系
11、统评测标准vB3级级安全域。安全域。该级的该级的TCB必须满足访问监控器的要求,审计跟踪能力更强,必须满足访问监控器的要求,审计跟踪能力更强,并提供系统恢复过程。并提供系统恢复过程。vA1级级验证设计,即提供验证设计,即提供B3级保护的同时给出系统的形式化设计说明级保护的同时给出系统的形式化设计说明和验证以确信各安全保护真正实现。和验证以确信各安全保护真正实现。vB2以上的系统以上的系统还处于理论研究阶段还处于理论研究阶段应用多限于一些特殊的部门如军队等应用多限于一些特殊的部门如军队等美国正在大力发展安全产品,试图将目前仅限于少数领域应用的美国正在大力发展安全产品,试图将目前仅限于少数领域应用
12、的B2安全级别下放到商业应用中来,并逐步成为新的商业标准。安全级别下放到商业应用中来,并逐步成为新的商业标准。数据库系统概论数据库系统概论第四章第四章 数据库安全性数据库安全性4.2 数据库安全性控制数据库安全性控制在一般计算机系统中,安全措施是一级一级层层设置在一般计算机系统中,安全措施是一级一级层层设置的。如:的。如: 应用应用DBMSOS DB 低低 高高安全性控制层次安全性控制层次 方法:方法: 用户标识用户标识和鉴定和鉴定 存取控制存取控制审计审计视图视图 操作系统操作系统 安全保护安全保护 密码存储密码存储数据库系统概论数据库系统概论第四章第四章 数据库安全性数据库安全性4.2.1
13、 用户标识与鉴别用户标识与鉴别(Identification & Authentication)v是系统提供的最外层安全保护措施。是系统提供的最外层安全保护措施。v基本方法基本方法:系统提供一定的方式让用户标识自己的名字或身份,系统系统提供一定的方式让用户标识自己的名字或身份,系统内部记录着所有合法用户的标识。每次用户要求进入系统时,内部记录着所有合法用户的标识。每次用户要求进入系统时,由系统核对用户提供的身份标识,通过鉴定后才提供机器使由系统核对用户提供的身份标识,通过鉴定后才提供机器使用权。用权。v用户标识用户标识用一个用户名或者用户标识号来标明用户身份。用一个用户名或者用户标识号来标明用
14、户身份。v口令口令用户标识和鉴定可以重复多次用户标识和鉴定可以重复多次数据库系统概论数据库系统概论第四章第四章 数据库安全性数据库安全性4.2.2 存取控制存取控制数据库安全最重要的一点就是确保只授权给有资格的用户访问数据数据库安全最重要的一点就是确保只授权给有资格的用户访问数据库的权限,同时令所有未授权的人员无法接近数据。这主要是通过库的权限,同时令所有未授权的人员无法接近数据。这主要是通过DBMS提供的存取控制机制实现的。提供的存取控制机制实现的。在数据库系统中,为了保证用户只能在数据库系统中,为了保证用户只能访问他有权存取的数据,必须预先对每访问他有权存取的数据,必须预先对每个用户定义存
15、取权限。这些定义放在数个用户定义存取权限。这些定义放在数据字典中,被称为安全规则或授权规则。据字典中,被称为安全规则或授权规则。对于通过鉴定获得上机权的用户(即对于通过鉴定获得上机权的用户(即合法用户),系统根据他的存取权限定合法用户),系统根据他的存取权限定义对他的各种操作请求进行控制,确保义对他的各种操作请求进行控制,确保他只执行合法操作他只执行合法操作用户权限定义和合法权检查机制一起组成了用户权限定义和合法权检查机制一起组成了DBMS的安全子系统的安全子系统存取控制机制主要包括两部分:存取控制机制主要包括两部分:n 定义存取权限定义存取权限n 合法权限检查合法权限检查数据库系统概论数据库
16、系统概论第四章第四章 数据库安全性数据库安全性v常用存取控制方法常用存取控制方法自主存取控制自主存取控制(简称(简称DAC) C2级级 灵活灵活n强制存取控制强制存取控制(简称(简称 MAC)nB1级级n严格严格n同一用户对于不同的数据对象有不同一用户对于不同的数据对象有不同的存取权限同的存取权限n不同的用户对同一对象也有不同的不同的用户对同一对象也有不同的权限权限n用户还可将其拥有的存取权限转授用户还可将其拥有的存取权限转授给其他用户给其他用户n每一个数据对象被标以一定的密级每一个数据对象被标以一定的密级n每一个用户也被授予某一个级别的许可证每一个用户也被授予某一个级别的许可证n对于任意一个
17、对象,只有具有合法许可证的对于任意一个对象,只有具有合法许可证的用户才可以存取用户才可以存取数据库系统概论数据库系统概论第四章第四章 数据库安全性数据库安全性4.2.3 自主存取控制(自主存取控制(DAC)方法)方法大型数据库管理系统几乎都支持自主存取控制,标准大型数据库管理系统几乎都支持自主存取控制,标准SQL用用GRANT语句和语句和REVOKE来实现自主存取控制。来实现自主存取控制。v存取权限由两个要素组成存取权限由两个要素组成数据对象数据对象操作类型操作类型数据库系统概论数据库系统概论第四章第四章 数据库安全性数据库安全性对象类型对象类型对象对象操作类型操作类型数据库数据库模式模式CR
18、EATE SCHEMA基本表基本表CREATE TABLE,ALTER TABLE模式模式视图视图CREATE VIEW索引索引CREATE INDEX数数 据据基本表和视图基本表和视图SELECT,INSERT,UPDATE,DELETE,BEFERENCES,ALL PRIVILEGES属性列属性列ALL PRIVILEGES表表4.3 关系数据库系统中的存取权限关系数据库系统中的存取权限数据库系统概论数据库系统概论第四章第四章 数据库安全性数据库安全性自主存取控制方法的优缺点自主存取控制方法的优缺点v优点优点能够通过授权机制有效地控制其他用户对敏感数能够通过授权机制有效地控制其他用户对敏
19、感数据的存取据的存取v缺点缺点可能存在数据的可能存在数据的“无意泄露无意泄露”原因:原因:这种机制仅仅通过对数据的存取权限来进这种机制仅仅通过对数据的存取权限来进行安全控制,而数据本身并无安全性标记。行安全控制,而数据本身并无安全性标记。 解决解决:对系统控制下的所有主客体实施强制存取:对系统控制下的所有主客体实施强制存取控制策略控制策略数据库系统概论数据库系统概论第四章第四章 数据库安全性数据库安全性4.2.4 授权与回收授权与回收一、授权:一、授权: GRANTvGRANT语句的一般格式:语句的一般格式: GRANT ,. ON TO ,. WITH GRANT OPTION;v功能:功能
20、:将对指定操作对象的指定操作权限授予指定的用户。将对指定操作对象的指定操作权限授予指定的用户。接受权限的用户可以是一个或多个具体用户或接受权限的用户可以是一个或多个具体用户或PUBLIC(全体用(全体用户)户)v谁定义?谁定义?DBA和表的建立者(即表的属主)也可以是已经拥有该和表的建立者(即表的属主)也可以是已经拥有该权限的用户。权限的用户。v指定了指定了WITH GRANT OPTIONWITH GRANT OPTION子句子句: : 获得某种权限的用户还可以把这种权限获得某种权限的用户还可以把这种权限再授予再授予别的用户。别的用户。v没有指定没有指定WITH GRANT OPTIONWI
21、TH GRANT OPTION子句子句: : 获得某种权限的用户只能使用该权限,获得某种权限的用户只能使用该权限,不能传播不能传播该权限。该权限。v不允许循环授权。不允许循环授权。数据库系统概论数据库系统概论第四章第四章 数据库安全性数据库安全性例例1 把查询把查询Student表权限授给用户表权限授给用户U1 GRANT SELECT ON TABLE Student TO U1; 例例2 2 把对把对StudentStudent表和表和CourseCourse表的全部权限授予用户表的全部权限授予用户U2U2和和U3U3 GRANT GRANT ALL PRIVILIGESALL PRIVI
22、LIGES ON TABLE Student, Course ON TABLE Student, Course TO U2, U3; TO U2, U3; 例例3 3 把对表把对表SCSC的查询权限授予所有用户的查询权限授予所有用户 GRANT SELECT GRANT SELECT ON TABLE SC ON TABLE SC TO TO PUBLICPUBLIC; ;数据库系统概论数据库系统概论第四章第四章 数据库安全性数据库安全性例例4 把查询把查询Student表和修改学生学号的权限授给用户表和修改学生学号的权限授给用户U4 GRANT UPDATE(Sno), SELECT ON
23、TABLE Student TO U4;例例5 把对表把对表SC的的INSERT权限授予权限授予U5用户,并允许他再将此权限授予其用户,并允许他再将此权限授予其他用户他用户 GRANT INSERT ON TABLE SC TO U5 WITH GRANT OPTION;例例6 DBA把在数据库把在数据库S_C中建立表的权限授予用户中建立表的权限授予用户U8GRANT CREATETABON DATABASE S_C TO U8;执行例执行例5 5后,后,U5U5不仅拥有了对表不仅拥有了对表SCSC的的INSERTINSERT权权限,限, 还可以还可以传播此权限传播此权限: 例例6GRANT
24、INSERT ON TABLE SC 6GRANT INSERT ON TABLE SC TO U6TO U6 WITH GRANT OPTIONWITH GRANT OPTION; ; 同样,同样,U6U6还可以将此权限授予还可以将此权限授予U7U7: 例例7 GRANT INSERT ON TABLE SC 7 GRANT INSERT ON TABLE SC TO U7TO U7; ; 但但U7U7不能再传播此权限。不能再传播此权限。 U5- U6- U7 U5- U6- U7数据库系统概论数据库系统概论第四章第四章 数据库安全性数据库安全性二、收回权限二、收回权限 REVOKEv一般格
25、式:一般格式: REVOKE REVOKE ,. . ON ON FROM FROM ,.;.;功能:从指定功能:从指定用户用户那里收回对指定那里收回对指定对象对象的指定的指定权限权限例例8 把用户把用户U4修改学生学号的权限收回修改学生学号的权限收回REVOKE UPDATE(Sno)ON TABLE Student FROM U4;例例9 收回所有用户对表收回所有用户对表SC的查询权限的查询权限REVOKE SELECT ON TABLE SC FROM PUBLIC;数据库系统概论数据库系统概论第四章第四章 数据库安全性数据库安全性例例10 把用户把用户U5对对SC表的表的INSERT权
26、限收回权限收回REVOKE INSERT ON TABLE SC FROM U5;权限的级联回收权限的级联回收系统将收回直接或间接从系统将收回直接或间接从U5处获得的对处获得的对SC表的表的INSERT权限权限: -U5- U6- U7收回收回U5、U6、U7获得的对获得的对SC表的表的INSERT权限权限: -U5- U6- U7数据库系统概论数据库系统概论第四章第四章 数据库安全性数据库安全性三、创建数据库模式的权限三、创建数据库模式的权限v一般格式:一般格式:CREATE USER withDBA RESOURCE|CONNECT; v说明:说明:只有系统超级用户才有权创建一个新的数据库
27、用户。只有系统超级用户才有权创建一个新的数据库用户。新创建的数据库用户有三种权限新创建的数据库用户有三种权限RESOURCE、CONNECT和和DBA。CREATE USER命令中如果没有指定创建新用户的权限,默认该命令中如果没有指定创建新用户的权限,默认该用户拥有用户拥有CONNECT权限。权限。拥有的权限拥有的权限可否执行的操作可否执行的操作CREATE USERCREATE SCHEMACREACET TABLE登录数据库、查询、操纵登录数据库、查询、操纵DBA可以可以可以可以可以可以可以可以RESOURCE不可以不可以不可以不可以可以可以可以可以CONNECT不可以不可以不可以不可以不
28、可以不可以可以,但必须拥有相应的权限可以,但必须拥有相应的权限表表4.6 权限与可执行的操作对照表权限与可执行的操作对照表数据库系统概论数据库系统概论第四章第四章 数据库安全性数据库安全性4.2.5 数据库角色数据库角色数据库角色是被命名的一组与数据库相关的权限,角色是权限的集数据库角色是被命名的一组与数据库相关的权限,角色是权限的集合。因此可以为一组具有相同权限的用户创建一个角色,使用角色来合。因此可以为一组具有相同权限的用户创建一个角色,使用角色来管理数据库权限可以简化授权的过程。管理数据库权限可以简化授权的过程。一、角色的创建一、角色的创建GREATE BOLE ;二、给角色授权二、给角
29、色授权GRANT ,. ON TO ,.;三、将一个角色授予其他角色或用户三、将一个角色授予其他角色或用户GRANT GRANT ,. 2. TO TO ,.WITH GRANT OPTION1.WITH GRANT OPTION;四、角色权限的收回四、角色权限的收回REVOKE REVOKE ,. . ON ON FROM FROM ,.;.;数据库系统概论数据库系统概论第四章第四章 数据库安全性数据库安全性4.2.6 强制存取(强制存取(MAC)控制方法)控制方法一、什么是强制存取控制一、什么是强制存取控制强制存取控制强制存取控制(MAC)是指系统为保证更高程度的安是指系统为保证更高程度的
30、安全性,按照全性,按照TDI/TCSEC标准中安全策略的要求,所标准中安全策略的要求,所采取的强制存取检查手段。采取的强制存取检查手段。MAC不是用户能直接感知或进行控制的。不是用户能直接感知或进行控制的。MAC适用于对数据有严格而固定密级分类的部门适用于对数据有严格而固定密级分类的部门 军事部门军事部门 政府部门政府部门数据库系统概论数据库系统概论第四章第四章 数据库安全性数据库安全性二、主体与客体二、主体与客体在在MAC中,中,DBMS所管理的全部实体被分为主体和客体两大类。所管理的全部实体被分为主体和客体两大类。主体主体是系统中的活动实体。是系统中的活动实体。 DBMS所管理的实际用户;
31、所管理的实际用户; 代表用户的各进程。代表用户的各进程。客体客体是系统中的被动实体,是受主体操纵的。是系统中的被动实体,是受主体操纵的。 文件文件 基表基表 索引索引 视图视图数据库系统概论数据库系统概论第四章第四章 数据库安全性数据库安全性三、敏感度标记三、敏感度标记对于主体和客体,对于主体和客体,DBMS为它们每个实例(值)指派一个敏感度为它们每个实例(值)指派一个敏感度标记(标记(Label)。)。 敏感度标记分成若干级别:敏感度标记分成若干级别: 绝密(绝密(Top Secret) 机密(机密(Secret) 可信(可信(Confidential) 公开(公开(Public)n主体的敏
32、感度标记称为许可证级别(主体的敏感度标记称为许可证级别(Clearance Level););n客体的敏感度标记称为密级(客体的敏感度标记称为密级(Classification Level););nMAC机制就是通过对比主体的机制就是通过对比主体的Label和客体的和客体的Label,最终确定主,最终确定主体是否能够存取客体。体是否能够存取客体。数据库系统概论数据库系统概论第四章第四章 数据库安全性数据库安全性四、强制存取控制规则四、强制存取控制规则当某一用户(或某一主体)以标记当某一用户(或某一主体)以标记label注册入系统时,系统要求注册入系统时,系统要求他对任何客体的存取必须遵循下面两条规则:他对任何客体的存取必须遵循下面两条规则:(1)仅当主体的许可证级别)仅当主体的许可证级别大于或等于大于或等于客体的密级时,该主体客体的密级时,该主体才能才能读读取相应的客体;取相应的客体;(2)仅当主体的许可证级别)仅当主体的许可证级别等于等于客体的密级时,该主体才能客体的密级时,该主体才能写写相应的客体。相应的客体。修正规则修正规则n主体的许可证级别主体的许可证级别 得到的利益得到的利益