数据库系统原理:安全性控制概述

yumo6661个月前 (04-04)技术文章23

数据库管理系统提供了统一的数据保护功能来保证数据的安全可靠和正确有效。数据库的主要安全措施就是存取控制。

学习数据库安全性控制的基本概念。

一、安全模型

在一般计算机系统中,安全措施是一级一级层层设置的。例如可以有如下的模型:

最外层是用户层,一般是通过用户名和口令来验证,进行安全性检查,提供最外层的保护。比如说可以采用瞳孔、指纹、人脸、语音等生物特征技术代替传统的口令鉴别。用户层通过用户身份的标识和鉴定提供保护。

在DBMS层,主要的安全措施是存取控制。

OS层即操作系统级,以及通信线路级,也有相应的防火墙认证等访问控制措施。

针对保密性特别高的数据,在硬件存储层可以对数据进行密码加密存储。


二、数据库存取控制机制

在数据库系统中,实现安全性的最主要的方法就是存取控制机制即只允许有权限的用户访问数据库。即根据预先定义好的用户权限进行存取控制,保证用户只能存取他有权存取的数据,这是数据库系统存取控制机制的主要功能。

在数据库管理系统中,存取控制机制的实现是由DBMS的安全子系统负责的。

DBMS安全子系统包括定义用户权限和合法权限检查两大功能。

(1)定义用户极限:用户把授权和回收权力的决定告诉系统,授权和回收权限的结果存入系统的数据字典;

(2)合法权限检查:当用户提出操作请求时,根据字典中的授权情况进行检查,以决定是否执行用户的操作请求。

常用存取控制方法有自主存取控制和强制存取控制两类方法。

(1)自主存取控制

o 不同用户对不同数据库对象有不同权限,权限可以被转授也可以被收回。

o 用户定义存取权限,DBMS检查存取权限。用户权限定义和合法权限检查机制一起组成了DBMS的安全子系统。

大部分的DBMS都实现了自主存取控制方法。在自主存取控制方法中,用户可以根据系统提供的GRANT命令来自由地决定将权限授予何人,系统只负责合法性检查。

这种权限管理非常灵活的机制,能够有效地控制一些敏感数据的存取,但是也容易造成数据的无意的泄露。比如说将数据复制出去以后再传播出去,因此,某些对安全性要求更高的DBMS还提供了强制存取控制策略。

(2)强制存取控制

o 系统为保证更高程度的安全性,对系统控制下的所有主客体实施强制存取控制。(强制存取控制策略中,用户无法感知和使用命令来进行授权,只能由系统进行强制控制。)

o 将数据库对象分为主体和客体。主体是DBMS管理的用户或者是用户进程,客体是文件、表、索引、视图等数据库中的对象。主体对客体的存取要遵守一定的规则。

o 主体的敏感度标记称为许可证级别,客体的敏感度标记称为密级。(当主体的许可证级别大于或等于客体的密级的时候,该主体才能读取相应的客体;而当主体的许可证级别小于或等于客体的密级的时候,该主体才能写相应的客体。)

o 这种对数据本身进行密级标记的方法,无论数据如何复制,标记与数据是一个不可分的整体,提供了更高级别的安全性。(因此,适用于对数据有严格而固定密级分类的部门,比如说军事部门或政府部门等。)

实现强制存取控制的系统,安全级别可以达到B级。

三、总结

数据存取控制是实现数据库安全性控制的主要办法。

大多数DBMS都实现了自主存取控制,B1级的数据库管理系统支持强制存取控制,强制存取控制提供了更高级别的安全性。

用户定义的权限和模式的这些信息是一起被保存在数据字典中的。当数据库管理系统接到用户的访问申请以后,会查阅数据字典,决定是否允许或是拒绝用户的操作申请。

自主存取控制比较灵活,强制存取控制提供了更高级别的安全性。需要注意的是,实现强制存取的系统也必须提供自主存取所实现的全部功能。

相关文章

分布式数据库系统的特点有什么?

  分布式数据库系统是指将数据存储在多个计算机系统(通常是位于不同地理位置的服务器)上的数据库系统。这些数据库系统通过网络互相连接,协同工作以提供数据存储、访问和管理功能。与传统的集中式数据库不同,分...

数据库培训

数据库培训:提升数据管理与分析能力引言在当今数字化时代,数据成为了企业发展的资源之一。为了更好地管理和分析海量数据,许多企业和个人需要掌握数据库技术。数据库培训成为了一种必不可少的学习方式,帮助人们...

主流操作系统的类型和特点,你了解多少?

操作系统的功能为了使计算机系统能协调、高效而可靠地进行工作,同时也为了给用户营造一种方便友好地使用计算机的环境,在计算机操作系统中,通常都设有进程管理、文件管理、设备管理、存储管理和作业管理等功能模...