数据库安全性

1. 数据库的不安全因素

  • 非授权用户对数据库的恶意存取和破坏
  • 数据库中重要或敏感的数据被泄露
  • 安全环境的脆弱性

2. 安全标准

数据库安全性_第1张图片
TCSEC/TDI安全级别划分

C1级开始应用自主存取控制(DAC)
B1级开始对标记的主体和客体实施强制存取 控制(MAC)以及审计等安全机制。

3. 数据库安全性控制

  • 用户身份鉴别(最外层安全保护措施)

    静态口令鉴別
    动态口令鉴别 短信密码 和动态令牌方式
    生物特征鉴别 指纹、虹膜和掌纹等
    智能卡鉴别

  • 存取控制

    定义用户权限,并将用户权限登记到数据字典中
    合法权限检查

  • 自主存取控制方法
数据库安全性_第2张图片
主要存取权限
  • 授权:授予与收回

    GRANT
    REVOKE

  • 数据库角色

    过程:
    1. 角色的创建
    2. 给角色授权
    3. 将一个角色授予其他的角色或用户
    4. 角色权限的收回

  • 强制存取控制方法

对于主体和客体,数据库管理系统为它们每个实例(值)指派一个敏感度标记(label)。
当某一用户(或某一主体)以标记label注册入系统时,系统要求他对任何客体的存取必须遵循如下规则:
(1) 仅当主体的许可证级别大于或等于客体的密级时,该主体才能读取相应的客体。
(2) 仅当主体的许可证级别小于或等于客体的密级时,该主体才能写相应的客体。

自主存取控制(MAC)能够通过授权机制有效地控制对敏感数据的存取。但是由于用户对数据的存取权限是“自主”的,在这种授权机制下,仍可能存在数据的“无意泄露”。

  • 视图机制

为不同的用户定义不同的视图,把数据对象限制在一定的范围内。也就是说, 通过视图机制把要保密的数据对无权存取的用户隐藏起来,从而自动对数据提供一定程度 的安全保护。

  • 审计

审计功能把用户对数据库的所有操作自动记录下来放入审计日志(audit log)中。审计员可以利用审计日志监控数据库中的各种行为,重现导致数据库现有状况的一系列事件,找出非法存取数据的人、时间和内容等。
可审计事件有服务器事件、系统权限、语句事件及模式对象事件,还包括用户鉴别、 自主访问控制和强制访问控事件。换句话说,它能对普通和特权用户行为、各种表操作、 身份鉴别、自主和强制访问控制等操作进行审计。

  • 数据加密

数据加密主要包括存储加密和传输加密。

存储加密
对于存储加密,一般提供透明和非透明两种存储加密方式。透明存储加密是内核级加 密保护方式,对用户完全透明;非透明存储加密则是通过多个加密函数实现的。
传输加密
常用的传输加密方式如链路加密和端到端加密。

数据库安全性_第3张图片
可信传输示意图

你可能感兴趣的:(数据库安全性)