12.4.1 数据库的安全性

2025-07-29 15:52:58 更新

除了提供保护意外引入的不一致性之外,数据库中存储的数据还要防止未经授权的访问和恶意的破坏或修改。




1

完整性约束导致的意外不一致性


2

安全性违例的恶意访问

未经授权读取数据(窃取信息),修改数据和破坏数据。

3


(1)数据库系统层次(database system)。确保用户授权限制不被违反

(2)操作系统层次(operating system)。操作系统安全性方面的弱点。

(3)网络层次(network)。网络软件的软件层安全性

(4)物理层次(physical)。结点在物理上受到保护,防止入侵者强行闯入或暗中潜入。

(5)人员层次(human)。谨慎给用户授权。

较低层次上(物理或人员层次)安全性存在缺陷,高层安全性措施即使很严格也可能被绕过。

4




在数据库系统层次上的安全性,主要包括:权限机制、视图机制和数据加密。

2.授权

通过DBMA提供的授权功能赋予用户数据访问授权


授权

说明

备注

数据访问授权(支持组合授权或不授权)

read

授权允许读取数据,但不允许修改数据

(1)delete授权只允许删除元组,删除了全部元组,关系依然存在;drop授权删除关系

(2)具有resource授权的用户在创建新关系后,自动获得该关系上的所有权限

(3)虽然索引的创建和删除不会改变关系中的数据,但索引关乎性能,需要作为权限对待(不同用户倾向不同)。

(4)最大授权形式是给数据库管理员的(类似操作系统)。

insert

授权允许插入新数据,但不允许修改已存在的数据

update

授权允许修改数据,但不允许删除数据

delete

授权允许删除数据

数据库模式授权

index

授权允许创建和删除索引

resource

授权允许创建新关系

alteration

授权允许添加或删除关系中的属性

drop

授权允许删除关系


3.授权与视图

作用

个性化数据库模型


隐藏数据

(1)简化系统使用(按需呈现数据),

(2)实现安全性(关系级安全性+视图级安全性):不允许直接访问某关系,但可被允许通过视图访问该关系的一部分

授权

创建视图无需resource授权

创建视图的用户不一定能获得该视图上的所有权限,得到的权限不会超过原有授权的其他授权。


4.极限授予

获得了某种形式授权的用户,可能被允许将此授权传递给其他用户。

用户具有授权当且仅当存在从授权图的根(即代表数据库管理员的结点)到代表该用户的结点的路径。

狡猾的用户可能企图通过相互授权来破坏权限回收规则


5.角色

某银行有很多出纳,每一个出纳必须对同一组关系具有同种类型的权限。

无论何时指定一个新出纳,都必须被单独授予所有这些授权。

(1)建立一个出纳账号,允许每个出纳用这个账号来连接数据库。缺点是无法鉴别出哪个出纳执行了事务,从而导致安全隐患。

(2)建立一个出纳角色集,分配给每个数据库用户有权扮演的角色(也可能为空)。每个用户用自己的账号连接数据库。系统可以通过(出纳角色+数据库用户)来确定每个有出纳身份的人的权限。

任何可以授予某用户的权限都可以授予某角色。给用户分配角色与给用户授权一样。与其他授权一样,某用户也可以被授予给他人分配角色的权限。


6.审计追踪

审计追踪:是对数据库所有更改(插入/删除/更新)的操作日志,还包括一些其他信息(谁在什么时候执行了什么更改等)。

审计追踪通过跟踪在账户上的更新来找到错误(或欺骗性)更新,同时找到执行这个更新的人。


审计追踪方式

说明

1

定义更新触发器

利用标示用户名和时间的系统变量

2

数据库内置审计追踪机制

细节参考数据库系统用户手册


7.数据加密

数据加密利用密码技术对信息进行加密,实现信息隐蔽,从而起到保护信息安全的作用。对数据库中的数据进行加密,可以防止数据在存储和传输过程中失密。

按照作用的不同,数据加密技术可分为数据传输加密技术、数据存储加密技术、数据完整性的鉴别技术和密钥管理技术。




1

数据传输加密技术

对传输中的数据流加密,通常有线路加密与端对端加密两种。

(1)线路加密:侧重线路而不考虑信源与信宿,是对保密信息通过各线路采用不同的加密密钥提供安全保护。

(2)端对端加密指信息由发送端自动加密,并且由TCP/IP进行数据包封装(数据不可阅读和识别),到达目的地后自动重组、解密,从而成为可读数据。

2

数据存储加密技术

防止在存储环节上的数据失密,可分为密文存储和存取控制。(1)密文存储:通过加密算法转换、附加密码、加密模块等方法实现;

(2)存取控制:对用户资格、权限加以审查和限制,防止非法用户存取数据或合法用户越权存取数据。

3

数据完整性鉴别技术

对介入信息传送、存取和处理的人的身份和相关数据内容进行特征值验证,一般包括口令、密钥、身份、数据等项的鉴别。

4

密钥管理技术

包括密钥的产生、分配、保存、更换和销毁等各个环节上的保密措施。