目录
1. 什么是数据库的安全性?
2. 数据库安全性和计算机系统的安全性有什么关系?
3.试述信息安全标准的发展历史...
4. 试述实现数据库安全性控制的常用方法和技术。
5. 什么是数据库中的自主存取控制方法和强制存取控制方法?
6.对下列两个关系模式:
7. 有两个关系模式:
8. 把习题8 中(1)~(7)的每一种情况,撤销各用户所授予的权力
9.理解并解释MAC 机制中主体、客体、敏感度标记的含义。
10. 举例说明强制存取控制机制是如何确定主体能否存取客体。
11. 什么是数据库的审计功能,为什么要提供审计功能?
答:数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄露、更改或破坏。
答:安全性问题不是数据库系统所独有的,所有计算机系统都有这个问题。只是在数据库系统中大量数据集中存放,而且为许多最终用户直接共享,从而使安全性问题更为突出。
系统安全保护措施是否有效是数据库系统的主要指标之一。
数据库的安全性和计算机系统的安全性,包括操作系统、网络系统的安全性是紧密联系、相互支持的,
本题不做阐述,概论书中有相关说明CC评估以及图4-1.表4-2
答:实现数据库安全性控制的常用方法和技术有:
答:自主存取控制方法:定义各个用户对不同数据对象的存取权限。当用户对数据库访问时首先检查用户的存取权限。防止不合法用户对数据库的存取。
强制存取控制方法:每一个数据对象被(强制地)标以一定的密级,每一个用户也被(强制地)授予某一个级别的许可证。系统规定只有具有某一许可证级别的用户才能存取某一个密级的数据对象。
自主存取控制中自主的含义是:用户可以将自己拥有的存取权限“自主”地授予别人,即用户具有一定的“自主”权。
答:
(1) GRANT ALL PRIVILEGES ON TABLE 学生,班级 TO U1 WITH GRANT OPTION ;
(2)GRANT SELECT,UPDATE(家庭住址) ON TABLE 学生 TO U2;
(3)GRANT SELECT ON TABLE 班级 TO PUBLIC;
(4)GRANT SELECT,UPDATE ON TABLE 学生 TO R1;
(5)GRANT R1 TO U1 WITH ADMIN OPTION ;
请用SQL的GRANT 和REVOKE语句(加上视图机制)完成以下授权定义或存取控制功能:
答:
( 1 )用户王明对两个表有SELECT 权力。
GRANT SELECT ON TABLE 职工,部门 TO 王明;
( 2 )用户李勇对两个表有INSERT 和DELETE 权力。
GRANT INSERT,DELETE ON TABLE 职工,部门 TO 李勇;
( 3 ) 每个职工只对自己的记录有SELECT 权力。*(可不必深究)
GRANT SELECT ON TABLE 职工 WHEN USER()=NAME TO ALL;
( 4 )用户刘星对职工表有SELECT 权力,对工资字段具有更新权力。
GRANT SELECT,UPDATE(工资) ON TABLE 职工 TO 刘星;
( 5 )用户张新具有修改这两个表的结构的权力。
GRANT ALTER TABLE ON TABLE 职工,部门 TO 张新;
( 6 )用户周平具有对两个表所有权力(读,插,改,删数据),并具有给其他用户授权的权限
GRANT ALL PRIVILIGES ON TABLE 职工,部门 TO 周平 WITH GRANT OPTION;
( 7 )用户杨兰具有从每个部门职工中SELECT 最高工资、最低工资、平均工资的权力,他不能查看每个人的工资。
CREATE VIEW 部门工资 AS (建立视图,然后对视图定义)
SELECT 部门.名称,MAX(工资),MIN(工资),AVG(工资)
FROM 职工,部门
WHERE 职工.部门号=部门.部门号
GROUP BY 职工.部门号;
GRANT SELECT ON TABLE 部门工资 TO 杨兰;
(1) REVOKE SELECT ON TABLE 职工,部门 FROM 王明;
(2) REVOKE INSERT , DELETE ON TABLE职工,部门 FROM 李勇;
(3) REOVKE SELECT ON TABLE 职工 WHEN USER ( ) =NAME FROM ALI ;
(4) REVOKE SELECT , UPDATE ON TABLE职工 FROM 刘星;
(5) REVOKE ALTER TABLE ON TABLE 职工,部门 FROM 张新;
(6) REVOKE ALL PRIVILIGES ON TABLE 职工,部门 FROM 周平;
(7) REVOKE SELECT ON TABLE 部门工资 FROM 杨兰;
DROP VIEW 部门工资;
答:主体是系统中的活动实体,既包括DBMS 所管理的实际用户,也包括代表用户的各进程。
客体是系统中的被动实体,是受主体操纵的,包括文件、基表、索引、视图等。
对于主体和 客体,DBMS 为它们每个实例(值)指派一个敏感度标记(Label )。
敏感度标记被分成若干级别,例如绝密(Top Secret )、机密(Secret )· 可信( Confidential )、公开(PubliC )等。主体的敏感度标记称为许可证级别 ,客体的敏感度标记称为密级
本题在书中也有一些例子,同时有需要的同学可以评论私信要解析。
答:审计功能是指DBMS 的审计模块在用户对数据库执行操作的同时把所有操作自动记录到系统的审计日志中。
因为任何系统的安全保护措施都不是完美无缺的,蓄意盗窃破坏数据的人总可能存在。利用数据库的审计功能,DBA 可以根据审计日志中记录的信息分析和重现导致数据库现有状况的一系列事件,找出非法存取数据的人、时间和内容等。