文档介绍:第5章数据库安全性
学习目的和要求
◆数据库保护概况
◆数据库与OS在安全上的关系
◆数据库安全性的目标
◆数据库的访问控制类型
◆ DAC访问控制的授/撤权
◆ SQL SERVER的安全体系结构
◆数据库安全其他内容:数据加密、审计、统计数据库安全等
7/14/2017
1
Designed by Tao Hongcai
数据库保护概况
一. 数据库破坏类型
② Concurrency Execution引起数据不一致;
③人为破坏;
④对数据操作引入的数据错误。
① System Failure;
二. 各种类型的保护措施
② Concurrency Execution引起数据不一致──并发控制;
③人为破坏──数据库安全;
④对数据操作引入的数据错误──数据库完整性。
① System Failure ──故障恢复;
7/14/2017
2
Designed by Tao Hongcai
数据库安全性概况
回答如下问题:
?
?
3. DoD Security Levels ?
?
7/14/2017
3
Designed by Tao Hongcai
①除了OS的安全屏障外,DBMS为加强其安全性,亦应建立有自己的安全体系;
②由于DBMS建立在OS之上,要求OS提供承诺,即:不允许用户绕过DBMS安全体系而直接访问DB;
③正是因为DBMS和OS有各自独立的安全体系,因此OS的用户要想访问DBMS,必须由DBA设置成DBMS的用户。
7/14/2017
4
Designed by Tao Hongcai
① Secrecy;
② Integrity;
③ Availability。
7/14/2017
5
Designed by Tao Hongcai
三. DoD Security Levels
强制访问控制MAC (Mandatory Access Control):基于全系统范围策略,而不由某个用户改变。DB对象和用户分别具有相应的安全级别(Security Class和Clearance),用户只有在满足一定规则才能访问某个DB对象。
标准支持情况:SQL-92不支持MAC。
自主式访问控制DAC (Discretionary Access Control):基于访问权限概念。SQL-92通过GRANT和REVOKE支持该DAC。
7/14/2017
6
Designed by Tao Hongcai
安全级:按A、B、C和D四个等级描述,A最高,D最低。
现状:目前大多数RDBMS支持C2级DAC和B1级MAC。
A级:要求有数学防范能力。
C级:要求支持DAC,又分二个子级C1、C2。C2要求身份认证(Login verification)和审计跟踪(Audit Trails)。
B级:要求支持MAC,又分三个子级B1、B2、B3。
7/14/2017
7
Designed by Tao Hongcai
用户标识:用户名。
①只有用户知道的信息;
用户鉴别:
②只有用户具有的物品;
最常见的用户鉴别:口令,要求长度/时间长短/不回显、打印/不可逆加密保存。
③个人特征。
7/14/2017
8
Designed by Tao Hongcai
DAC访问控制的授/撤权
回答如下问题:
?
?
?
?
7/14/2017
9
Designed by Tao Hongcai
授权:GRANT <角色类型> [{, <角色类型>}] TO <用户>
[ IDENTIFIED BY <口令>]
(2) DB对象权限──由DBA或对象创建者授予。
自主性访问控制是通过控制用户访问权限,即授权的方式进行的。
(Authorization)类型
(1)角色权限──由DBA授予;
<角色类型>::=Connect|Resource|DBA
撤权: REVOKE <角色类型> [{, <角色类型>}] FROM <用户>
7/14/2017
10
Designed by Tao Hongcai