第四章数据库安全性
- 格式:docx
- 大小:11.70 KB
- 文档页数:3
第四章数据库安全性控制(习题集)二、选择题1、以下(D)不属于实现数据库系统安全性的主要技术和方法。
A. 存取控制技术 B. 视图技术C. 审计技术D. 出入机房登记和加锁 2、SQL中的视图提高了数据库系统的(D)。
A. 完整性 B. 并发控制 C. 隔离性 D. 安全性3、SQL语言的GRANT和REMOVE语句主要是用来维护数据库的(C)。
A. 完整性 B. 可靠性 C. 安全性 D. 一致性4、在数据库的安全性控制中,授权的数据对象的(A),授权子系统就越灵活。
A. 范围越小 B. 约束越细致 C. 范围越大 D. 约束范围大5、SQL中的视图机制提高了数据库系统的( D )。
A.完整性 B.并发控制 C.隔离性 D.安全性 6、SQL语言的GRANT和REVOKE语句主要是用来维护数据库的(C )。
A.完整性 B.可靠性 C.安全性 D.一致性 7 、安全性控制的防范对象是(B),防止他们对数据库数据的存取。
A.不合语义的数据 B.非法用户 C.不正确的数据 D.不符合约束数据 8、找出下面SQL 命令中的数据控制命令( A )。
A.GRANT B.COMMIT C.UPDATE D.SELECT三、填空题1、数据库的安全性是指保护数据库以防止不合法的使用所造成的_数据泄露、数据更改或数据破坏_。
2、完整性检查和控制的防范对象,防止它们进入数据库。
安全性控制的防范对象是,防止他们对数据库数据的存取。
3、计算机系统有三类安全性问题,即_技术安全_ 、_管理安全_和 _政策法规_。
4、用户标识和鉴别的方法有很多种,而且在一个系统中往往是多种方法并举,以获得更强的安全性。
常用的方法有通过输入_用户标识__和 _口令_来鉴别用户。
5、用户权限是由两个要素组成的:_数据对象_ 和 _操作类型_ 。
6、在数据库系统中,定义存取权限称为_授权_ 。
SQL语言用_GRANT_语句向用户授予对数据的操作权限,用_REVOKE_语句收回授予的权限。
第1篇第一章总则第一条为加强公司数据库安全管理工作,保障公司数据资源的安全、完整和可用,防止数据泄露、篡改和损坏,依据《中华人民共和国网络安全法》、《中华人民共和国数据安全法》等相关法律法规,结合公司实际情况,制定本规定。
第二条本规定适用于公司所有涉及数据存储、处理和传输的数据库系统,包括但不限于企业资源计划(ERP)、客户关系管理(CRM)、财务系统、人力资源系统等。
第三条公司数据库安全管理应遵循以下原则:(一)安全第一,预防为主;(二)分级保护,责任到人;(三)技术和管理相结合,确保数据安全;(四)持续改进,不断提高安全管理水平。
第二章组织与管理第四条公司成立数据库安全管理委员会,负责统筹规划、组织协调、监督指导数据库安全管理工作。
第五条数据库安全管理委员会下设数据库安全管理办公室,负责具体实施数据库安全管理工作。
第六条各部门、各业务单元应明确数据库安全管理责任人,负责本部门、本业务单元数据库安全管理工作。
第七条公司应建立健全数据库安全管理制度,明确数据库安全管理的职责、权限和流程。
第八条公司应定期开展数据库安全培训,提高员工数据库安全意识和技能。
第三章数据库安全策略第九条数据库访问控制(一)实行最小权限原则,根据用户职责分配相应的数据库访问权限。
(二)对数据库用户进行分类管理,分为系统管理员、业务操作员、审计员等。
(三)对数据库用户实施密码策略,确保密码复杂度、有效期和修改频率符合要求。
(四)定期对数据库用户进行安全审计,及时发现并处理违规操作。
第十条数据库安全审计(一)实施实时监控,对数据库访问行为进行记录和审计。
(二)定期对数据库访问日志进行分析,发现异常行为及时处理。
(三)建立数据库安全事件报告制度,对重大安全事件进行通报和处理。
第十一条数据库加密与传输安全(一)对敏感数据进行加密存储,确保数据在存储、传输和访问过程中的安全。
(二)采用SSL/TLS等加密协议,保障数据库访问传输安全。
第四章数据库的保护4.1 数据库的安全性4.2 数据库的完整性4.3 数据库的并发控制4.4 数据库的恢复4.5 数据库的复制与镜像4.1 数据库的安全性●数据库的安全性是指保护数据库以防止不合法的使用造成泄漏、更改或破坏等。
●采用的方法有:–用户标识和鉴别–使用视图–数据加密●数据库系统的安全模型–存取权限控制–审计应用DBMS OS DB 用户标识存取控制操作系统保护密码存储4.1.1用户标识和鉴别●一般由系统管理员(DBA)为每个用户建立一个用户名(用户标识/帐号)和用户口令。
用户必须使用此标识方可进入系统●语法:CREATE USER <username> IDENTIFIED BY<password>●二次登录问题4.1.2存取控制●存取权限两要素:–数据对象–操作类型●授权–定义某用户对哪些数据对象具有哪些类型的操作●数据对象的粒度–表、列、行(一般由视图实现)–粒度越细,授权子系统越灵活,安全性越完善。
但系统开销越大,数据字典庞大权限限制的种类–对用户进行控制。
用户只可以访问自己的子模式–对操作类型进行控制操作一般包括:查询、修改、插入、删除等用户可以被授予不同的操作权限–对数据对象的控制用户可以被限制访问某些表或表的列权限组(角色)概念–角色是数据库预先设置的一系列具有某种常用权限的组合。
某用户属于一个角色就拥有该角色的所有权限了SYBASE的一些角色–sa_role–sso_role–sybase_ts_role–navigator_roleORACLE中的三类角色–Connect(用于数据库录入人员)●可以访问ORACLE●对于允许的表可以做查询和更新操作。
●建立视图和同义词–Resource(用于开发人员)●具有Connect的所有权限●建表、索引、聚簇等权限●对于自己创建的对象可以操作并可以给他人赋权●使用审计命令–DBA(用于管理人员)●具有Resource的所有权限●可以访问任何用户的数据●授予或收回用户权限●建立公共同义词●建立和修改分区●执行数据库的卸出●审计●Oracle中存取控制的语法–授权语句/新建用户GRANT[CONNECT | RESOURCE | DBA] TO<username> [IDENTIFIED BY <password> ]–收回权限/删除用户:REVOKE[CONNECT | RESOURCE | DBA] FROM<username>–操作权限控制GRANT <操作权> ON <表名> TO <username|public>[WITH GRANT OPTION]●其中“操作权”包括:SELECT、INSERT、DELETE、UPDATE、ALTER、INDEX、ALL●对象拥有者自然用于对对象的操作权,只有拥有者和DBA可以将对象的操作权赋予别人4.1.3定义视图●可以通过建立视图屏蔽用户不该看到的数据内容,但视图的主要功能是实现数据独立性,其安全保护功能不够精细4.1.4数据加密●ORACLE和SYBASE数据库都提供对存储过程的加密,在SYBASE中使用SP_HIDETEXT4.1.5审计●非强制性安全保护措施,自动记录对数据库的访问存取痕迹●分为用户级和系统级–用户级主要用户设置,针对用户自己创建的对象的审计,包括对这些对象的各种访问–系统级审计是DBA进行的,针对用户登录的成功与否以及对数据库级权限的操作●审计常常消耗大量时间和空间资源,所以一般作为可选项可灵活打开和关闭,视系统的安全性要求而定例:对SC表的ALTER和UPDATE进行审计AUDIT ALTER,UPDATE ON SC取消对SC表的任何审计NOAUDIT ALL ON SC4.2 数据库的完整性●数据库安全性是防止非法用户的非法操作,而完整性是是防止不合语义的数据●数据库完整性的实现机制–DBMS检查数据库中的数据是否满足语义规定的条件,这些加在数据库数据之上的语义约束条件称为数据库完整性约束条件–而DBMS中检查数据是否满足完整性条件的机制称完整性检查4.2.1完整性约束条件●完整性约束条件作用的对象可以分为:列级、元组级和关系级三个粒度–列级约束主要约束列的取值类型、范围、精度排序等–元组级约束主要约束记录中各个字段之间的联系–关系级约束主要是约束多个记录或关系之间的联系●完整性约束就其状态可以分为静态和动态的–静态主要是反映数据库的状态是合理的–动态主要是反映数据库的状态变迁是否合理1)静态列级约束–对数据类型的约束,包括数据的类型、长度、单位、精度等,如char(10)。
第一章总则第一条为确保公司数据库安全,保护公司数据资产不受侵害,根据《中华人民共和国网络安全法》、《中华人民共和国数据安全法》等相关法律法规,结合公司实际情况,特制定本制度。
第二条本制度适用于公司所有数据库,包括但不限于生产数据库、测试数据库、开发数据库等。
第三条本制度旨在规范数据库的访问、操作、维护、备份和恢复等环节,以实现数据库安全、稳定、高效运行。
第二章数据库安全责任第四条公司各级管理人员及员工应严格遵守本制度,对数据库安全负有直接责任。
第五条公司设立数据库安全管理小组,负责制定、实施和监督数据库安全管理制度,协调解决数据库安全相关问题。
第六条数据库安全管理小组职责包括:(一)制定数据库安全策略,明确安全要求;(二)定期对数据库进行安全检查,发现安全隐患及时整改;(三)组织开展数据库安全培训,提高员工安全意识;(四)建立健全数据库安全事件应急响应机制。
第三章数据库安全策略第七条数据库访问控制:(一)实行最小权限原则,用户根据工作需要分配访问权限;(二)采用双因素认证机制,提高访问安全性;(三)定期对用户权限进行审核,及时调整权限。
第八条数据库操作规范:(一)禁止非授权用户进行数据库操作;(二)禁止在数据库中执行任何可能对数据安全造成威胁的操作;(三)定期备份数据库,确保数据安全。
第九条数据库维护与监控:(一)定期对数据库进行性能优化,提高数据库运行效率;(二)实时监控数据库运行状态,发现异常情况及时处理;(三)定期对数据库进行安全扫描,发现漏洞及时修复。
第四章数据库安全培训与宣传第十条公司应定期组织开展数据库安全培训,提高员工安全意识。
第十一条通过宣传栏、内部邮件等方式,加强对数据库安全知识的普及。
第五章数据库安全事件应急响应第十二条建立数据库安全事件应急响应机制,确保在发生安全事件时能够迅速响应、有效处置。
第十三条数据库安全事件应急响应流程:(一)发现安全事件,立即报告数据库安全管理小组;(二)数据库安全管理小组评估事件影响,启动应急预案;(三)根据应急预案,采取相应措施,降低事件影响;(四)事件处理完毕,进行总结分析,完善数据库安全管理制度。
第4章数据库安全性数据库知识点整理第4章数据库安全性了解计算机系统安全性问题数据库安全性问题威胁数据库安全性因素掌握TCSEC和CC标准的主要内容C2级DBMS、B1级DBMS的主要特征DBMS提供的安全措施⽤户⾝份鉴别、⾃主存取控制、强制存取控制技术视图技术和审计技术数据加密存储和加密传输使⽤SQL语⾔中的GRANT语句和REVOKE语句来实现⾃主存取控制知识点什么是数据库的安全性数据库的安全性是指保护数据库以防⽌不合法的使⽤所造成的数据泄露、更改或破坏举例说明对数据库安全性产⽣威胁的因素⾮授权⽤户对数据库的恶意存取和破坏数据库中重要或敏感的数据被泄露安全环境的脆弱性信息安全标准的发展历史,CC评估保证级划分的基本内容TCSEC/TDI 安全级别划分安全级别定义A1 验证设计(verified design)B3 安全域(security domains)B2 结构化保护(structural protection)B1 标记安全保护(labeled security protection)C2 受控的存取保护(controlled access protection)C1 ⾃主安全保护(discretionary security protection)D 最⼩保护(minimal protection)CC评估保证级(EAL)的划分评估保证级定义 TCSEC安全级别(近似相当)EAL1 功能测试(functionally tested)EAL2 结构测试(structurally tested) C1EAL3 系统地测试和检查(methodically tested and checked) C2EAL4 系统地设计、测试和复查(methodically designed,tested and reviewed) B1EAL5 半形式化设计和测试(semiformally designed and tested) B2EAL6 半形式化验证的设计和测试(semiformally verified design and tested) B3EAL7 形式化验证的设计和测试(formally verified design and tested) A1实现数据库安全性控制的常⽤⽅法和技术⽤户⾝份鉴别该⽅法由系统提供⼀定的⽅式让⽤户标识⾃⼰的名字或⾝份。
《数据库系统概论》作业第一章概述1. 层次模型的数据结构是__树形__结构;网状模型的数据结构是网状结构;关系模型的数据结构是__二维表__结构。
2.数据库系统具有“数据独立性”特点的原因是因为在数据库系统中(B)(A)、采用磁盘作为外存(B)、采用三级模式结构(C)、使用OS来访问数据(D)、用宿主语言编写应用程序3. 数据库(DB)、数据库系统(DBS)和数据库管理系统(DBMS)三者之间的关系是(A)。
(A)、DBS包括DB和DBMS(B)、DBMS包括DB和DBS(C)、DB包括DBS和DBMS(D)、DBS就是DB,也就是DBMS4.数据库系统的数据独立性体现在( B )(A)、不会因为数据的变化而影响到应用程序(B)、不会因为系统数据存储结构和数据逻辑结构的变化而影响应用程序(C)、不会因为存储策略的变化而影响存储结构(D)、不会因为某些存储结构的变化而影响其他的存储结构5.要保证数据库的数据独立性,需要修改的是(A)(A)、模式与外模式(B)、模式与内模式(C)、三层之间的两种映射(D)、三层模式6.下述( D )不是DBA(数据库管理员)的职责。
(A)、完整性约束说明(B)、定义数据库模式(C)、数据库安全(D)、数据库管理系统设计7.(B)是按照一定的数据模型组织的,长期储存在计算机内,可为多个用户共享的数据的集合。
(A)、数据库系统(B)、数据库(C)、关系数据库(D)、数据库管理系统8.数据模型的三要素是( D)。
(A)、外模式、模式、内模式(B)、关系模型、层次模型、网状模型(C)、实体、联系、属性(D)、数据结构、数据操作、完整性约束9. 简述数据库系统的主要特点。
(1)、数据结构化数据库系统实现整体数据的结构化,这是数据库的主要特征之一,也是数据库系统与文件系统的本质区别。
(2)数据的共享性高,冗余度低,易扩充数据库的数据不再面向某个应用而是面向整个系统,(3)数据独立性高数据独立性包括数据的物理独立性和数据的逻辑独立性。
第四章作业1. 什么是数据库安全性?数据库安全性是指保护数据库以防止不合法使用所造成的数据泄漏、更改或破坏。
2. 试述实现数据库安全性控制的常用方法和技术。
数据库管理系统提供的安全措施主要包括用户身份鉴别、自助存取控制和强制存取控制技术、试图技术和审计技术、数据加密存储和加密传输等。
3. 什么是数据库中的自主存取控制和强制存取控制方法。
a.在自助存取方法中,用户对于不同的数据库对象有不同的存取权限,不同的用户对同一对象也有不同的权限,而且用户还可将其拥有的存取权限转授给其他用户。
因此自主存取控制非常灵活。
b.在强制存取控制方法中,每一个数据库对象被标以一定的密级,每一个用户也被授予某一个级别的许可证。
对于任意一个对象,只有具有合法许可证的用户才可以存取。
强制存取控制因此相对比较严格。
4. 今有两个关系模式:职工(职工号,姓名,年龄,职务,工资,部门号)部门(部门号,名称,经理名,地址,电话号)请用SQL的grant和revoke语句(加上视图机制)完成以下授权定义或者存取控制功能:(1)授予用户王明对上述两个表的SELECT权限GRANT SELECTON TABLE 职工,部门TO 王明;(2)授予用户李勇对上述两个表的INSERT和DELETE权限GRANT INSERT, DELETEON TABLE 职工,部门TO 李勇;(3)授予用户刘星对职工表的SELECT权限和对工资字段的UPDATE权限GRANT SELETE,UPDATE(工资)ON TABLE 职工TO 刘星;(4)授予用户张欣创建表的权限GRANT CREAT TABLETO 张欣;(5)授予用户对上述两个表的所有权限,并具有转授给他人的权力。
GRANT ALL PRIVILEGESON 职工,部门TO 用户WITH GRANT OPTION;(6)用户杨兰只能查看每个部门职工的最高工资、最低工资、平均工资,但不能查看每个职工的工资。
【习4-1 】什么是数据库的安全性?答:数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄露、更改或破坏。
【习4-2 】数据库的安全性和计算机系统的安全性有什么关系?答:数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄露、更改或破坏。
安全性的问题并不是数据库系统所独有的,所有计算机系统都有这个问题。
由于数据库系统中存放大量数据,并为多个用户所共享,使安全性问题更为突出。
数据库的安全性和计算机系统的安全性,包括操作系统、网络系统的安全性是紧密联系、相互支持的。
【习4-5 】试述实现数据库安全性控制的常用方法和技术。
答:实现数据库安全性控制的常用方法和技术有:
(1)用户标识和鉴别:该方法由系统提供一定的方式让用户标识自己的名字或身份。
每次用户要求进入系统时,由系统进行核对通过鉴定后才提供系统的使用权。
(2)存取控制:通过用户权限定义和合法检查确保只有合法权限的用户访问数据库,所有
未被授权的人员无法存取数据。
例如C2 级中的自主存取控制(DAC),B1 级中的强制存取控制(MAC)。
(3)视图机制:为不同的用户定义视图,通过视图机制把要保密的数据对无权存取的用户隐藏起来,从而自动地对数据提供一定程度的安全保护。
(4)审计:建立审计日志,把用户对数据库的所有操作自动记录下来放入审计日志中,DBA可以利用审计跟踪的信息,重现导致数据库现有状况的一系列事件,找出非法存取数据的人、时间和内容等。
(5)数据加密:对存储和传输的数据进行加密处理,从而使得不知道解密算法的人无法获知数据的内容。
【习4-6 】什么是数据库中的自主存取控制方法和强制存取控制方法?答:自主存取控制方法:用户对于不同的数据对象有不同的存取权限,不同的用户对同一对象也有不同的权限,而且用户还可将其拥有的存取权限转授给其他用户。
强制存取控制方法:每一个数据对象被标以一定的密级,每一个用户也被授予某一个级别的许可证。
对于任意一个对象,只有具有合法许可证的用户才可以存取。
强制存取控制相对比较严格,它不是用户能直接感知或进行控制的。
所以比较适用于那些对数据有严格而固定密级分类的部门,例如军事部门或政府部门。
【习4-7】SQL语言中提供了哪些数据控制的语句?请试举几例来说明它们的使用方法。
答:SQL中自主存取控制是通过GRAN■语句和REVOK语句来实现的。
如:
GRANT SELECT,INSERT ON Student
TO 王平
WITH GRANT OPTION。
就将Student 表的SELECT和INSERT权限授予了用户王平,后面的“WITH GRANT OPTION子句表示用户王平同时也获得了“授权”的权限,即可以把得到的权限继续授予其他用户。
REVOKE INSERT ON Stude nt FRO M 王平CASCADE
就将Student表的INSERT权限从用户王平处收回,选项CASCAD表示,如果用户王平
将Student的INSERT权限又转授给了其他用户,那么这些权限也将从其他用户处收回。
【习4-8 】今有两个关系模式:
职工(职工号,姓名,年龄,职务,工资,部门号)部门(部门号,名称,经理名,地址,电话号)
请用SQL的GRANT和REVOKE D句(加上视图机制)完成以下授权定义或存取控制功能:
(1)用户王明对两个表有SELECT权力
GRANT SELECT Of职工,部门
TO 王明;
(2)用户李勇对两个表有INSERT和DELETE权力
GRANT SELECT DELETE ON职工,部门
TO 王明;
(3)每个职工只对自己的记录有SELECT权力
GRANT SELECT Of职工
WHEN USER()=NAME
TO ALL;
这里假定系统的GRANT语句支持WHEN?句和USER()的使用。
用户将自己的名字作为唯一标识。
注意,不同的系统这些扩展语句可能是不同的。
可参考具体的DBMS勺扩展语句
(4)用户刘星对职工表有SELECT权力,对工资字段具有更新权力。
GRANT SELECT UPDATE工资)ON 职工
TO 刘星;
(5)用户张新具有修改这两个表的结构的权力
GRANT ALTER TABLE 0职工,部门
TO 张新
( 6)用户周平具有对两个表所有权力(读、插、改、删数据),并具有给其他用户授权的权力。
GRANT ALL PRIVILIGES ON 职工,部门
TO 周平
WITH GRANT OPTIO;N
(7)用户杨兰具有从每个部门职工中SELECT最高工资、最低工资、平均工资的权力,他
不能查看每个人的工资。
首先建立一个视图。
然后对这个视图定义杨兰的存取权限。
CREATE VIEW 部门工资AS
SELECT 部门.名称,MAX工资),MIN(工资),AVG工资)
FROM 职工,部门
WHERE 职工.部门号=部门.部门号
GROUP BY 职工. 部门号;
GRANT SELECT ON 部门工资
TO 杨兰;
【习4-9 】把习题8中的( 1) -- (7)的每一种情况,撤消各用户所授予的权力。
答:
(1)REVOKE SELECT ON 职工,部门
FROM 王明;
(2)REVOKE INSERT,DELETE ON 职工,部门
FROM 李勇;
(3)REVOKE SELECT ON 职工
WHEN USER()=NAME
FROM ALL;
这里假定用户将自己的名字作为唯一标识,且系统的REVOKE句支持WHEN?句,系
统也支持USER()的使用。
(4)REVOKE SELECT UPDATE ON职工
FROM刘星;
(5)REVOKE ALTER TABLE ON 职工,部门
FROM张新;
(6)REVOKE ALL PRIVILGES ON 职工,部门
FROM周平;
(7)REVOKE SELECT ON 部门工资
FROM杨兰;
DROP VIEW部门工资
【习4-10】为什么强制存取控制提供了更高级别的数据库安全性?
答:MAC机制通过对比主体的Label和客体的Label,遵循如下规则:
(1)仅当主体的许可证级别大于等于客体的密级时,该主体才能读取相应的客体;
(2)仅当主体的许可证级别等于客体的密级时,该主体才能写相应的客体。
这两种规则的共同点在于它们均禁止了拥有高许可证级别的主体更新低密级的数据对象,从而防止了敏感数据的泄露。
因为对数据本身进行密级标记,无论数据如何复制,标记与数据是一个不可分的整体,只有符合密级标记要求的用户才可以操纵数据,从而提供了更高级别的安全性。
【习4-11】理解并解释MAC机制中主体、客体、敏感度标记的含义。
答:主体是系统中的活动实体,既包括DBMS所管理的实际用户,也包括代表用户的各进
程。
客体是系统中的被动实体,是受主体操纵的,包括文件、基表、索引、视图等。
对于主体和客体,DBMS为它们每个实例(值)指派一个敏感度标记( Label )。
敏感度标记被分成若干级别,例如绝密、机密、可信、公开等。
主体的敏感度标记称为许可证级别,客体的敏感度标记称为密级。
【习4-12】举例说明MAC机制如何确定主体能否存取客体的。
答:假设要对关系变量S进行MAC控制,为简化起见,假设要控制存取的数据单位是元
组,则每个元组标以密级,如下表所示:
假设用户U1和U2的许可证级别分别为3和2,则根据规则U1能查得元组S1和
S2,可修改元组S2;而U2只能查得元组S1,只能修改元组S1。
这里假设系统的存取规则是:
(1)仅当主体的许可证级别大于或等于客体的密级时才能读取相应的客体;
(2)仅当主体的许可证级别等于客体的密级时才能写相应的客体。
【习4-13】什么是数据库的审计功能,为什么要提供审计功能?答:审计把用户对数据库的所有操作自动记录下来放入审计日志中。
因为任何系统的安全保护措施都不是完美无缺的,蓄意盗窃、破坏数据的人总是想方
设法打破控制。
DBA可以利用审计跟踪的信息,重现导致数据库现有状况的一系列事件,找出非法存取数据的人、时间和内容等。
【习4-14】统计数据库中存在何种特殊的安全性问题?
答:统计数据库允许用户查询聚集类型的信息,如合计、平均值、最大值、最小值等,不允许查询单个记录信息。
但是,人们可以从合法的查询中推导出不合法的信息,即可能存在隐蔽的信息通道,这是统计数据库要研究和解决的特殊的安全性问题。