数据库原理复习4
数据库安全性
数据库安全性控制
常用方法:
用户标识和鉴定
存取控制:
常用的存取控制方法:
自主存取控制(DAC)C2级,灵活
强制存取控制(MAC)B1级,严格
授权 :
grant <权限>[,权限]…
[on<对象类型><对象名>]
to <用户>[,用户]…
[with grant option]
with grant option:决定是否具有传播权限的权力
例:把查询student表和course表的全部权限授予给用户U
2和U3
grant all priviliges
on table student,course
to u2,u3
把对sc表查询的权限授予所有用户
grant select
on table sc
to public
收回权限
revoke <权限>
on <对象类型><对象名>,…
from <用户>,…
例:收回用户U5对SC表的INSERT权限
revoke insert
on table sc
from U5;
强制存取控制:
敏感度标记:
绝密(Top Secret)
机密(Secret)
可信(Confidential)
公开(Public)
MAC控制规则:
1)仅当主体(用户)的许可证级别大于或等于客体(文件、基表,索引等)的密级时,该主体才能读取相应的客体
2)仅当主体的许可证级别等于客体的密级时,该主体才能写相应的客体。
MAC修正规则:
主体的许可证级别 《= 客体的密级 ——> 主体才能写客体
共同点:禁止了拥有高许可证级别的主体更新低密级的客体
视图机制
使用视图的修改限制起到数据保护作用,权限赋予的客体为视图
审计(Audit)
预防监测,将所有操作记录在审计日志上。
数据加密
明文——>暗文
统计数据库安全
统计数据库特点:
·允许用户查询聚类类型的信息(如合计,平均值等)
·不允许查询单个记录信息
为了防止从查询数据中推导出不合法数据
处理规则:
1)任何查询至少要涉及N(N足够大)个以上的记录
2)任意两个查询的相交数据项不能超过M个
3)任一用户的查询次数不能超过1 + (N-2)/M 次。