实验2:安全性语言
安全性实验包含两个实验项目(参见表4.3),其中1个为必修,1个为选修。自主存取控制实验为设计型实验项目,审计实验为验证型实验项目。
实验2.1 自主存取控制实验
(1)实验目的
掌握自主存取控制权限的定义和维护方法。
(2)实验内容和要求
定义用户、角色,分配权限给用户、角色,回收权限,以相应的用户名登录数据库验证权限分配是否正确。选择一个应用场景,使用自主存取控制机制设计权限分配。可以采用两种方案。方案一:采用SYSTEM超级用户登录数据库,完成所有权限分配工作,然后用相应用户名登陆数据库以验证权限分配正确性;方案二:采用SYSTEM用户登陆数据库创建三个部门经理用户,并分配相应的权限,然后分别用三个经理用户名登陆数据库,创建相应部门的USER, ROLE,并分配相应权限。下面的实验报告示例,采用实验方案一。验证权限分配之前,请备份好数据库;针对不同用户所具有的权限,分别设计相应的SQL语句加以验证。
(3)实验重点和难点
实验重点:定义角色,分配权限和回收权限。
实验难点:实验方案二实现权限的再分配和回收。
*实验2.2审计实验
(1)实验目的
掌握数据库审计的设置和管理方法,以便监控数据库操作,维护数据库安全。
(2)实验内容和要求
打开数据库审计开关。以具有审计权限的用户登陆数据库,设置审计权限,然后以普通用户登陆数据库,执行相应的数据操纵SQL语句,验证相应审计设置是否生效,最后再以具有审计权限的用户登陆数据库,查看是否存在相应的审计信息。
(3)实验重点和难点
实验重点:数据库对象级审计,数据库语句级审计
实验难点:合理地设置各种审计信息。一方面,为了保护系统重要的敏感数据,需要系统地设置各种审计信息,不能留有漏洞,以便随时监督系统使用情况,一旦出现问题,也便于追查;另一方面,审计信息设置过多,会严重影响数据库的使用性能,因此需要合理设置。