1. 数据库安全标准
TCSEC标准
CC标准
TCSEC/TDI标准
1.1 TCSEC/TDI标准
四组七等级
1.2 CC标准
七级
2. 数据库安全性控制
数据库管理系统安全性控制模型
身份鉴别 --> 自主存取控制 --> 强制存取控制 --> 推理控制 --> 审计 --> 简单入侵检测
计算机系统的安全模型
数据库安全性控制的常用方法
- 用户标识和鉴定
- 存取控制:自主存取控制(DAC)和强制存取控制(MAC)
- 视图
- 审计
- 数据加密存储和加密传输
2.1 用户身份鉴别
是最外层安全保护
用户标识:由用户名和用户标识号组成(用户标识号在系统整个生命周期内唯一)
用户身份鉴别的方法:静态口令鉴别、动态口令鉴别、生物特征鉴别、智能卡鉴别
2.4 授权:授予与回收
2.5 数据库角色
2.6 【重要】强制存取控制方法
敏感度标记分成若干级别
绝密(Top Secret,TS)
机密(Secret,S)
可信(Confidential,C)
公开(Public,P)
TS>=S>=C>=P
强制存取控制规则
(1)仅当主体的许可证级别大于或等于客体的密级时,该主体才能读取相应的客体
绝密 读 机密
(2)仅当主体的许可证级别小于或等于客体的密级时,该主体才能写相应的客体
机密 写 绝密
3. 审计
审计功能用于安全性要求较高的部门,C2以上安全级别的DBMS必须具有审计功能
AUDIT语句:设置审计功能
NOAUDIT语句:取消审计功能
例1:对修改SC表结构或修改SC表数据的操作进行审计
AUDIT ALTER,UPDATE ON SC;
例2、取消对SC表的一切审计
NOAUDIT ALTER,UPDATE ON SC;
4. 数据加密
加密方法:存储加密、传输加密
4.1 存储加密
1、透明存储加密
- 内核级加密保护方式,对用户完全透明
- 将数据在写到磁盘时对数据进行加密,授权用户读取数据时再对其进行解密
- 数据库的应用程序不需要做任何修改,只需在创建表语句中说明需加密的字段即可
内核级加密方法: 性能较好,安全完备性较高
2、非透明存储加密
通过多个加密函数实现
4.2 传输加密
1、链路加密
- 在链路层进行加密
- 传输信息由报头和报文两部分组成
- 报文和报头均加密
2、端到端加密
- 在发送端加密,接收端解密
- 只加密报文不加密报头
- 所需密码设备数量相对较少,容易被非法监听者发现并从中获取敏感信息
4.3 基于安全套接层协议SSL传输方案的实现思路
第二步:确认通信双方端点的可靠性
采用基于数字证书的服务器和客户端认证方式
第四步:可信数据传输
数据在被发送之前进行加密和消息摘要计算,以密文形式在网络上传输;被接收的时候,需用相同一组特定的密钥进行解密和摘要计算
5. 其他安全性保护
推理控制
隐蔽信道
数据隐私保护