暂无图片
暂无图片
1
暂无图片
暂无图片
暂无图片

数据库技术-安全管理(一)

五青社 2021-08-02
998

正文共:3918字 4图

预计阅读时间:10分钟

前言

上一篇文章介绍了数据库技术-数据库后台编程技术(二),下面学习数据库安全管理,本章节在NCRE考试中一般情况下会出现选择题,填空题
安全性对于任何一个数据库系统来说都非常重要。SQL Server 2008 提供了完善的安全控制机制,它通过身份验证、数据库用户权限确认等一系列措施来保护数据库中的信息资源,以防止这些资源被非法使用或破坏

目录

安全控制概述

  • 安全控制概念
  • 安全控制目标
  • 数据库安全的威胁
  • 安全控制模型
  • 授权和认证

存取控制

  • 自主存取控制
  • 强制存取控制

审计跟踪
统计数据库的安全性
习题

安全控制概述

安全控制概念

首先需要区分数据库安全性和数据完整性

「安全性」是指保护数据以防止不合法的使用而造成数据被泄露、更改和破坏;
「完整性」是指数据的准确性和有效性。

对比数据库安全性和数据完整性

安全性( Security) :保护数据以防止不合法用户故意造成的破坏。
完整性( Integnty) : 保护数据以防止合法用户无意中造成的破坏。

简单地说,二者都指保护数据,安全性确保用户被允许做其想做的事情;完整性确保用户所做的事情是正确的。

数据库中的安全控制指:在数据库系统的不同层次提供对有意和无意损害行为的安全防范。

防范措施

  • 对有意非法活动可采用加密存、取数据的方法控制;
  • 对有意非法操作可采用用户身份验证、限制操作权限控制;
  • 对无意的损坏可采用提高系统的可靠性和数据备份等方法来控制。

安全控制的目标

数据库安全控制的目标:保护数据免受意外或故意的丢失、破坏或滥用
保护数据,维护数据库安全性包括:允许或禁止用户操作数据库及其对象,从而防止数据库被滥用或误用

「数据库管理员( DataBase Administrator , DBA )负责数据库系统的全部安全」。因此,数据库系统的DBA必须能够识别最严重的威胁,并实施安全措施,采取合适的控制策略以最小化这些威胁。

注意:

  • 1.任何需要访问数据库系统的用户都需要首先向DBA申请账户;
  • 2.DBMS核对登录账户和密码的有效性,允许有效用户访问数据库;
  • 3.DBMS使用一个加密表来保存用户账户和密码信息。
  • 4.当创建新账户时, DBMS向该表中插入一条新记录来保存新账户信息。当删除账户时, DBMS从该表中删除账户的记录

数据库安全的威胁

为了保证数据库安全,系统的所有部分都必须是安全的。包括数据库、操作系统网络、用户,甚至计算机系统所在的建筑和房屋。全面的数据库安全计划必须考虑下列情况:

「1.可用性的损失」
可用性的损失意味着用户不能访问数据或系统,或两者都不能访问。
「2.机密性数据的损失」
机密性数据的损失是指数据库中的关键性机密数据的损失.机密性的损失可能导致企业失去竞争力。
「3.私密性数据的损失」
私密性数据的损失是指个人数据的损失,这种情况可能导致对个人或单位不利的合法行为。
「4.偷窃和欺诈」
偷窃和欺诈不仅影响数据库环境,而且也将影响整个企业的运营情况。
「5.意外的损害」
意外的损害可能是非故意造成的,包括人为的错误。软件和硬件引起的破坏。

注意:硬件、网络或应用程序的破会导致可用性的损失,这种损失会造成系统出现严重的问题。

安全控制模型

在一般的计算机系统中,安全措施是一级一级层层设置的。下图为计算机系统的安全控制模型图,它显示了计算机系统中从用户使用数据库应用程序开始一直到访问后台数据库数据,需要经过的安全认证过程。

安全控制模型

当用户需要访问数据库时,需要按照以下步骤进行:

  • 1.登入数据库。此时需要身份验证,用户将身份信息通过数据库应用程序递交DBMS进行验证,验证合法进行下一步。
  • 2.执行操作。DBMS验证此用户是否具有执行此操作的权限。
  • 3.文件存储(物理)操作。根据操作系统的保护措施验证。
  • 4.访问数据。存储在磁盘上的数据库文件可以进行加密存储。

授权和认证

授权是将合法访问数据库或数据库对象的权限授予用户的过程,授权的过程包括认证用户对对象的访问请求。

认证是一种鉴定用户身份的机制。实际就是检验用户实际是否被准许操作数据库。它核实连接到数据库的人(用户)或程序的身份。

认证最简单的形式:与数据库连接时提供的用户名和密码
操作系统和数据库广泛使用的是基于口令的认证。对于更多的安全模式,特别是在网络环境下,也使用其他的认证模式,例如挑战应答系统、数字签名等。

注意:

  • 1.授权和认证控制可以构建到软件中;
  • 2.DBMS的授权规则限制用户对数据的访问同时也限制用户访问数据时的行为,因此授权控制也被称为访问控制。

存取控制

现在的DBMS通常采用自主存取控制强制存取控制两种方法来解决数据库安全系统的访问控制问题,有的DBMS只提供一种方法,有的两种都提供。无论采用哪种存取控制方法,需要保护的数据单元或数据对象包括从整个数据库到某个元组的某个部分。

自主存取控制

「用户对不同的数据对象具有不同的存取权限,而且没有固定的关于哪些用户对哪些对象具有哪些存取权限的限制」

自主存取控制(又称为自主安全模式) ,目前的SQL标准也对自主存取控制提供支持,这主要是通过SQL的GRANT(授予)、REVOKE(收回)和DENY(拒绝)语句来实现的。通过「授权机制」来有效控制对敏感数据的存取。

注意:授予和收回权限是数据库管理员(DBA)的职责。数据库管理员(DBA)依照数据的实际应用情况将合适的权限授给相应的用户。

「权限分类」

在自主存取控制中,通常将数据库中的权限划分为两类。

权限分类

第一类是对数据库管理系统进行维护的权限。
第二类是对数据库中的对象和数据进行操作的权限 ,这类权限又可以分为两类:
语句权限:对数据库对象的操作权限,包括创建、删除和修改数据库对象。
对象权限:对数据库数据的操作权限,包括对表、视图数据的增、删、改、查权限。存储过程的执行权等。
还有特殊的一类隐含权限:是用户自动具有的权限,比如系统管理员自动具有全部的操作权限,数据库对象拥有者自动具有所拥有对象的全部权限。隐含权限不能被更改。

「用户分类」

在自主存取控制中,一般将数据库中的用户按其操作权限的不同划分为以下三类:

用户分类

系统管理员系统管理员在数据库服务器上具有全部的权限。SQL Server2008的默认系统管理员是"sa”。数据库对象拥有者创建数据库对象的用户即为数据库对象有者。数据库对象拥有者对其所拥有的对象具有全部权限。普通用户普通用户只具有对数据库数据的操作权限。

强制存取控制

「每个数据对象被标以一定的密级,每个用户也被授予一 个许可证级别。对于任意一个对象,只有具有合法许可证的用户才可以存取。因此,强制存取控制本质上具有分层的特点,且相对比较严格。」

在强制存取控制中, DBMS将全部实体划分为「主体」「客体」两大类。
主体是系统中的活动实体,既包括DBMS所管理的实际用户,也包括代表用户的各个进程。
客体是系统中的被动实体,是受主体操纵的,包括文件、基本表、索引、视图等。对于主体和客体,DBMS为它们的每个实例指派一个「敏感度标记( Label )」

敏感度标记:主体的敏感度标记被称为许可证级别( Clearance Level ) , 客体的敏感度标记被称为密级( Classification Level)。敏感度标记被分为若干级别,例如绝密( Top Secret)、秘密( Secret)、可信(Confidentml )和公开( Public )等。

当某一用户(或某一主体)以标记Label注册到系统时,系统要求他对任何客体的存取必须遵循如下规则:

  • 仅当主体的许可证级别大于或等于客体的密级时。该主体才能读取相应的客体。
  • 仅当主体的许可证级别等于客体的密级时,该主体才能写相应的客体。

在某些系统中,第二条规则有些差别。这些系统规定:仅当主体的许可证级别小于或等于客体的密级时,该主体才能写相应的客体,即用户可以为写入的数据对象赋予高于自己的许可证级别的密级。这样数据一旦被写入,该用户自己也不能再读取该数据对象了。「这两种规则的共同点是它们均禁止了拥有高许可证级别的主体更新低密级的数据对象,从而防止了敏感数据的泄露」

强制存取控制是对数据本身进行密级标记,无论数据如何被复制,标记与数据是一个不可分的整体。只有符合密级标记要求的用户才可以操作数据,从而提供了更高级别的安全性。

注意:较高安全性级别提供的安全保护要保护较低级别的所有保护,因此在实现强制存取控制时,首先要实现自主存取控制,即「自主存取控制与强制存取控制共同构成了DBMS的安全机制」

美国国防部颁布了“橘皮书”和“紫皮书”对强制存取控制作了全面的描述和定义,这两份文献给出了通用安全性分级模式,共定义了D、C、B和A四类安全级别,从D类到A类级别依次增高。

通用安全性级别模式

审计跟踪

审计跟踪实质上是一种特殊的文件或数据库,系统在上面自动记录用户对常规数据的所有操作。
在一些系统中,审计跟踪与事务日志在物理上是集成的;在其他一些系统中,审计跟踪与事务日志在物理上是分开的。
审计跟踪对数据安全有辅助作用。许多DBMS提供内嵌机制来创建审计跟踪,也可以使用系统定义的用户名和时间变量来定义适当的用于修改操作的触发器,从而创建审计跟踪。

统计数据库的安全性

统计数据库提供基于各种不同标准的统计信息或汇总数据,而统计数据库安全系统是用于控制对统计数据库的访问。

习题

  1. 数据库中用户按操作权限不同,通常分为______、 ______、 _______三种。

参考资料及声明

  • 全国计算机等级考试三级教程.数据库技术 2019.12.
  • 三级数据库技术:全国计算机等级考试上机考试题库 2017.10.

  掌握更多知识,请扫码关注我~这里有大学的各种高校服务
点击下方“在看”,给我鼓励



文章转载自五青社,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论