-
数据保护包括: 数据的安全性 + 数据的完整性
-
数据库的安全性
(1) 完整性:只有被授权的用户可以进行合法存取
(2) 可用性:系统采用的安全机制不能明显降低数据库的性能
(3) 保密性:系统对数据库中的机密数据进行加密
(4) 可审计性:把合法用户的所有操作记录下来
因此,数据库系统所采用的安全技术主要包括以下几种
1° 访问控制技术:
通过创建账户和口令,由DBMS控制登录过程
2° 存取控制技术:
用户只能访问他权限内的数据
3° 数据加密技术
保护敏感数据
4° 数据库审计
记录数据库访问情况和用户的操作
-
存取控制包括: 自主存取控制 和 强制存取控制
-
自主存取控制
(1) 用户权限包括: 数据库对象 + 操作类型
数据库对象有:基本表、视图、数据本身
操作权限包括: 1° 操作数据库对象,例如创建表、视图、删除表、删除数据库等
2° 操作数据库数据,例如增删改查
(2) 自动存取通过 REVOKE、GRANT实现,REVOKE时后面可以添加CASCADE、RESTRICT
(3) 用户少的时候可以为每个用户分配权限,用户多的时候可以通过给用户分配角色的方式分配权限
(4) 自主存取控制最终的效果是,系统的用户权限状态形成了一个授权存取矩阵,其中行属性为客体名称,包括基本表、视图等;列属性为用户名或角色名。矩阵中的值代表权限,例如bochen列、temp行的值为SELECT,代表用户bochen对temp表(或视图)只可以查询SELECT
-
视图机制
(1) 视图机制是自动存取控制的一部分
(2) 数据库中只存放视图的定义,不存放实际的数据,视图类似于基本表的“窗口”
(3) 视图可以实现的功能
1° 使用户限定在基本表的某些行
2° 使用户限定在基本表的某些列
3° 将多个表的列连接起来,看起来像一张表
4° 提供聚合信息而非详细信息(例如使用了SUM、AVG等聚合函数)
-
强制存取控制
(1) 目标:保证系统具有更高程度的安全性
(2) DBMS中将全部实体分为 主体 和 客体
主体:系统中的活动实体,包括用户、客户端进程等
客体:系统中的被动实体,包括数据表、记录、列、视图等
(3) 强制存取控制状态下,系统给所有主体和所有客体分配了不同级别的安全属性,且安全属性一般不可被改变;分类后,通过对主体和客体的已分配的安全属性进行匹配判断,决定主体是否有权对客体进行进一步的操作
(4) 操作规则
1° 当主体的许可证级别 大于等于 客体的密级时,主体才能读取客体
2° 当主体的许可证级别 等于 客体的密级时,主体才能写客体
规则2的原因是:防止高级别主体向低级别客体泄露信息,进而使得信息被低级别主体读取
-
数据加密
(1) 数据加密后,存储空间不能有明显的改变
(2) 加密和解密的耗时不能过长。所以,一般不对索引字段和表的主、外键进行加密
-
数据库审计
(1) 数据库审计即将任何人对数据库的任何操作记录在审计文件中
chapter06_数据库的安全性_1_数据库的安全性
猜你喜欢
转载自blog.csdn.net/captxb/article/details/88081393
今日推荐
周排行