数据保护包括: 数据的安全性 + 数据的完整性
-
数据库的安全性
(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_数据库的安全性
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 数据库安全性指保护数据库,防止因用户非法使用数据库造成数据泄露、更改或破坏。 数据保密是指用户合法的访问到机密数据...