本文首先回顾了数据库安全研究的历史、现状,在此基础上对其发展提出了一些看法。随后介绍了数据库安全设计目标、系统管理、安全模型等相关的基本理论,以及Oracle是怎样保护系统安全的。在第四章,研究的是推理通道这一当前数据库安全研究的热点,深入讨论了检测和消除推理通道的技术。
相对于其他的计算机系统,数据库系统具有以下特点:客体较多;数据生存期长,对维护的要求高;涉及到信息在不同粒度的安全,即客体具有层次性和多项性;在DBMS中受保护的客体可能是复杂的逻辑结构,若干复杂的逻辑结构可能映射到同一物理数据客体上,即客体逻辑结构与物理结构的分离;数据库的安全与数据语法有关;应考虑到推理攻击针对上述数据库系统的基本特点。
在安全的数据库中,既要保证授权的合法用户对数据的有效存取,又能严格拒绝非法用户的攻击企图。因此,数据库安全系统的设计目标包含以下三项:
(1)数据的完整性。
数据的完整性指数据的正确性、一致性和相容性。系统只允许授权的合法用户存取数据库中的数据信息,并且以不破坏数据的完整性为前提;同时,系统应该杜绝非法用户对数据信息进行任何存取操作。由于多个程序并发存取同一个数据库中的数据,可能会造成数据的不一致性。所以安全系统要具有保证数据一致性的功能。
(2)数据的可用性。
当系统授权的合法用户申请存取有权存取的数据时,安全系统应该尽量减小对合法操作的影响。换句话说,采用的安全机制不能明显降低数据库系统的操作性能。
(3)数据的保密性。
安全系统应该提供一个高强度的加密方案,对数据库中的机敏数据进行加密处理。只有当系统的合法用户访问有权访问的数据时,系统才把相应的数据进行解密操作;否则,系统应保持机敏数据的加密状态,以防止非法用户窃取到明文信息,对系统进行攻击。