- 数据库安全最重要的一点就是确保只授权给有资格的用户访问数据库的权限,同时另所有未被授权的人员无法接近数据,这主要通过数据库的存取控制机制实现
- 存取控制机制:包括定义用户权限和合法权限检查两部分
用户权限:数据库对象和操作类型 - 数据库角色是被命名的一组与数据库操作相关的权限,角色是权限的集合
- 当某一用户注册如系统时,遵循的规则:
(1)仅当主体的许可证级别大于或等于客体的密级时,该主体才能读取相应的客体
(2)仅当主体的许可证级别小于或等于客体的密级时,该主体才能写相应的客体
(如果违反了规则(2),就有可能把数据的密级从高流向低,造成数据的泄露如TS高密级的主体把一个密级为TS的数据恶意降低为P,然后写回,造成TS密级数据泄露) - 视图机制间接地实现了存取谓词的用户权限定义
- 数据库安全性控制的常用方法:
(1)用户标识和鉴别:系统提供一定的方式让用户标识自己的姓名或身份,每次用户要求进入系统时,系统对其进行核对,通过后才可获得系统的使用权
(2)存取控制:通过用户权限定义和存取权限检查确保只有合法权限的用户访问数据库
(3)视图技术:为不同的用户定义视图,通过视图技术把要保密的数据对无权存取的用户隐藏起来
(4)审计技术:建立审计日志,把用户对数据库的所有操作自动记录下来,放入审计日志,审计人员可以根据审计日志重现导致数据库现有状况的一系列事件,找出非法存取的人、时间、内容
(5)数据加密:对存储和传输的数据进行加密处理,使不知道解密算法的人无法获取数据的内容
第四章 数据库安全性
