目录
1.数据库安全性概述
(1)研究数据库安全性的目的
非法使用数据库的情况:
(2)安全标准简介
① TCSEC/TDI(紫皮书)标准的基本内容
② TCSEC/TDI安全级别划分
2.数据库安全性控制
数据库安全性控制的常用方法:
(1)用户身份鉴别
口令
① 静态口令鉴别
② 动态口令鉴别
③ 生物特征鉴别
④ 智能卡鉴别
(2)存取控制
① 存取控制机制组成:
这两类方法(自主存取控制和强制存取控制)的简单定义是:
(3)自主存取控制方法—DAC
① 授权与回收----用户
② 数据库角色—针对角色
(4)强制存取控制方法—MAC
自主存取控制缺点:
强制存取控制(MAC):
敏感度标记(Label)
强制存取控制规则:
DAC与MAC共同构成DBMS的安全机制
3. 视图机制
4. 审计
审计日志(Audit Log);
审计分为:
用户级审计
系统级审计
5. 数据加密
(1)存储加密
透明存储
(2)传输加密
① 链路加密
② 端到端加密
6. 其他安全性保护
推理控制
隐蔽信道
数据隐私
1.数据库安全性概述
(1)研究数据库安全性的目的
问题的提出:
数据库的一大特点是数据可以共享
数据共享必然带来数据库的安全性问题
数据库系统中的数据共享不能是无条件的共享
例: 军事机密、国家机密、高精密仪器数据、国内市场需求分析、核武器、
销售计划、客户档案、医疗档案、公民信息档案、银行储蓄数据
非法使用数据库的情况:
黑客和犯罪分子编写合法程序绕过DBMS及其授权机制然后偷取、修改用户数据
编写应用程序执行非授权操作
通过多次合法查询数据库从中推导出一些保密数据
(2)安全标准简介
① TCSEC/TDI(紫皮书)标准的基本内容
TCSEC/TDI,从四个方面来描述安全性级别划分的指标
安全策略、责任、保证、文档
② TCSEC/TDI安全级别划分
按系统可靠或可信程度逐渐增高如下表:
A1 |
验证设计 |
B3 |
安全域 |
B2 |
结构化保护 |
B1 |
标记安全保护 |
C2 |
受控的存取保护 |
C1 |
自主安全保护 |
D |
最小保护 |
B2以上的系统:
还处于理论研究阶段
应用多限于一些特殊的部门,如军队等
美国正在大力发展安全产品,试图将目前仅限于少数领域应用的B2安全级别下放到商业应用中来,并逐步成为新的商业标准
其他级别系统介绍书上详细列出。
2.数据库安全性控制
用户要求进入计算机系统时,系统首先根据输入的用户标识进行用户身份鉴定,只有合法的用户才准许进入计算机系统;对已进入系统的用户,数据库管理系统还要进行存取控制,只允许用户执行合法操作;操作系统也会有自己的保护措施;数据最后还可以以密码形式存储到数据库中。
数据库安全性控制的常用方法:
(1)用户身份鉴别
是系统提供的最外层安全保护措施
用户标识
每个用户标识由用户名(user name)和用户标识号(UID)两部分组成。
UID在系统的整个生命周期内是唯一的。系统内部记录着所有合法用户的标识
口令
系统核对口令以鉴别用户身份 (口令可理解为密码)
用户标识和口令易被窃取
每个用户预先约定好一个计算过程或者函数
常用的用户身份鉴别方法有以下几种:
① 静态口令鉴别
这种方式是当前常用的鉴别方法。
静态口令一般由用户自己设定,鉴别时只要按要求输入正确的口令,系统将允许用户使用数据库管理系统。
这些口令是静态不变的,在实际应用中,用户常常用自己的生日、电话、简单易记的数字等内容作为口令,很容易被破解。而一旦被破解,非法用户就可以冒充该用户使用数据库。
这种方式虽然简单,但容易被攻击,安全性较低。
② 动态口令鉴别
它是目前较为安全的鉴别方式。
这种方式的口令是动态变化的,每次鉴别时均需使用动态产生的新口令登录数据库管理系统,即采用一次一密的方法。
常用的方式如短信密码和动态令牌方式,每次鉴别时要求用户使用通过短信或令牌等途径获取的新口令登录数据库管理系统。(类似于我们常用的验证码登录)
与静态口令鉴别相比,这种认证方式增加了口令被窃取或破解的难度,安全性相对高一些。
③ 生物特征鉴别
它是一种通过生物特征进行认证的技术,其中,生物特征是指生物体唯一具有的,可测量、识别和验证的稳定生物特征,如指纹、虹膜和掌纹等。
这种方式通过采用图像处理和模式识别等技术实现了基于生物特征的认证,与传统的口令鉴别相比,无疑产生了质的飞跃,安全性较高。
④ 智能卡鉴别
智能卡是一种不可复制的硬件,内置集成电路的芯片,具有硬件加密功能。
智能卡由用户随身携带,登录数据库管理系统时用户将智能卡插入专用的读卡器进行身份验证。
由于每次从智能卡中读取的数据是静态的,通过内存扫描或网络监听等技术还是可能截取到用户的身份验证信息,存在安全隐患。
因此,实际应用中一般采用个人身份识别码(PIN)和智能卡相结合的方式。这样,即使PIN或智能卡中有一种被窃取,用户身份仍不会被冒充。
(2)存取控制
数据库安全最重要的一点就是确保只授权给有资格的用户访问数据库的权限,同时令所有未被授权的人员无法接近数据,这主要通过数据库系统的存取控制机制实现。
① 存取控制机制组成:
定义用户权限,并将用户权限登记到数据字典中
用户对某一数据对象的操作权力称为权限
合法权限检查
每当用户发出存取数据库的操作请求后(请求一般应包括操作类型、操作对象和操作用户等信息),数据库管理系统查找数据字典,根据安全规则进行合法权限检查,若用户的操作请求超出了定义的权限