"本文档主要讨论了数据库安全,特别是用户管理和相关安全机制。用户管理涉及到用户与会话、用户与所有者的概念,以及如何通过CREATE和DROP USER命令来创建和删除用户。数据库安全包括系统运行安全和信息安全,涵盖环境、硬件、操作系统、用户认证、存取权限等多个方面。安全威胁分为无意和有意两类,如自然灾害、人为错误、特权滥用和非授权访问。数据库安全需求强调完整性、可用性和保密性,通过各种机制如用户标识、存取控制、加密、审计、备份恢复和推理控制来实现。推理通道是指通过多个查询结果的逻辑关联和数据依赖,可能揭示敏感信息的途径,需要通过控制来防止信息泄露。"
在数据库应用中,用户管理是确保数据库安全的关键环节。用户与会话指的是每个用户在与数据库交互时所建立的连接,而用户与所有者的关系决定了资源的所有权和权限。创建用户通常使用`CREATE USER`命令,指定用户名(`userid`)和密码(`passwd`),而`DROP USER`用于删除用户。资源配额和用户管理的DDL语句则用来限制用户对数据库资源的使用,并定义用户可以执行的操作。
数据库安全涉及系统运行的两个层面:环境和物理安全,确保硬件、存储、操作系统层面的安全;以及系统信息安全,包括用户认证和权限控制。数据库面临的安全威胁有多种,比如非授权信息泄露、修改或拒绝服务,这些威胁既可能是意外也可能是有意为之,如恶意软件、特权滥用或非授权代理。
为了满足数据库安全需求,首要目标是保证数据的完整性,包括物理完整性和逻辑完整性。物理完整性确保数据不受硬件损坏影响,可以通过备份和恢复策略实现。逻辑完整性涉及并发操作的正确性和商业规则的遵循。可用性意味着授权用户应能正常访问数据库,同时系统运行效率要得到保障。保密性要求只有经过授权的用户才能访问特定数据,通过存取控制策略、加密、审计等手段来实施。
数据库安全机制包括用户标识与鉴别,通过验证用户身份确保只有合法用户可以访问;存取控制,设置权限限制不同用户对数据的访问;数据库加密,对敏感数据进行加密存储,防止未授权读取;数据库审计,记录用户访问行为以便追踪异常;备份与恢复,用于灾难恢复;推理控制与隐私保护,防止通过数据分析推导出敏感信息。
推理通道是数据库安全中的一个重要概念,它指出恶意用户可能通过一系列查询结果的逻辑关联,利用数据依赖或完整性约束推断出原本不应该被其访问的信息。因此,数据库管理系统需要设计策略来限制这种推理,以保护数据的保密性。