数据库安全
视图机制
把要保密的数据对无权存取这些数据的用户隐藏起来,对数据提供
一定程度的
安全保护
主要功能是提供数据独立性,无法完全满足要求
间接实现了支持存取谓词的用户权限定义
例如
建立计算机系学生的视图,把对该视图的SELECT权限授于王平,把该视图上的所有操作权限授于张明
先建立计算机系学生的视图CS_Student
CREATE VIEW CS_Student
AS
SELECT *
FROM Student
WHERE Sdept='CS';
在视图上进一步定义存取权限
GRANT SELECT
ON CS_Student
TO 王平 ;
GRANT ALL PRIVILIGES
ON CS_Student
TO 张明;
审计
什么是审计
审计日志(
Audit Log
)
将用户对数据库的所有操作记录在上面
DBA
利用审计日志找出非法存取数据的人、时间和内容
C2
以上安全级别的
DBMS
必须具有
审计分为
用户级审计
针对自己创建的数据库表或视图进行审计
记录所有用户对这些表或视图的一切成功和(或)不成功的访问要求以及各种类型的
SQL
操作
系统级审计
DBA
设置
监测成功或失败的登录要求
监测
GRANT
和
REVOKE
操作以及其他数据库级权限下的操作
AUDIT
语句:设置审计功能
NOAUDIT
语句:取消审计功能
例如
对修改SC表结构或修改SC表数据的操作进行审计
AUDIT ALTER,UPDATE
ON SC;
例如
取消对SC表的一切审计
NOAUDIT ALTER,UPDATE
ON SC;
数据加密
数据加密
防止数据库中数据在存储和传输中失密的有效手段
加密的基本思想
加密方法
替换方法
置换方法
混合
方法
DBMS
中的数据加密
统计数据库安全性
统计数据库
允许用户查询
聚集
类型的信息(如合计、平均值等)
不允许查询
单个
记录信息
统计数据库中特殊的安全性问题
隐蔽的信息通道
能从合法的查询中推导出不合法的信息
规则1:任何查询至少要涉及N(N足够大)个以上的记录
规则2:任意两个查询的相交数据项不能超过M个
规则3:任一用户的查询次数不能超过1+(N-2)/M
数据库安全机制的设计目标:
试图破坏安全的人所花费的代价 >> 得到的利益
数据的共享日益加强,数据的安全保密越来越重要
DBMS
是管理数据的核心,因而其自身必须具有一整套完整而有效的安全性机制
TCSEC
和
CC