第九章数据库安全性练习题和答案
数据库系统原理课后答案 第九章

9.1 名词解释(1)OODBS:是指面向对象数据库系统,它既具数据库管理的基本功能,又能支持面向对象的数据模型。
(2)ORDBS:基于对象关系数据模型的DBS称为对象关系数据库系统(ORDBS)。
(3)平面关系模型:传统的关系模型称为“平面关系模型”,它要求关系模式具有第一范式(1NF)性质,关系具有规范化的结构。
也就是规定属性值是不可分解的,即不允许属性值具有复合结构(元组或关系)。
(4)嵌套关系模型:是从平面关系模型发展而成的。
它允许关系的属性值又可以是一个关系,而且可以出现多次嵌套。
嵌套关系突破了1NF的定义框架,是“非1NF关系”。
(5)复合对象模型:在嵌套关系模型上进一步放宽要求。
在关系定义上,集合与元组不再有交替出现的严格限制,此时的关系中,属性类型可以是基本数据类型、结构类型(元组类型)或集体类型(即关系类型)。
(6)数据的泛化/细化:是对概念之间联系进行抽象的一种方法。
当在较低层上的抽象表达了与之联系的较高层上抽象的特殊情况时,就称较高层上抽象是较低层上抽象的"泛化",而较低层上抽象是较高层上抽象的"细化"。
(7)对象关系模型:在传统关系数据基础上,提供元组、数组、集合等更为丰富的数据类型及处理新数据类型操作的能力而形成的数据模型。
(注:传统关系模型只支持字符、数值、字串,布尔值等等基本数据类型及其处理功能)(8)类型级继承性:当继承性发生在类型级时,子类型继承了超类型的属性。
也就是说,超类型所具有的属性,在子类上也具有。
(9)表级继承性:继承性也可发生在表级,(就是元组集合上发生继承),子表继承超表全部属性,超表中每个元组最多可以与子表中一个元组对应,而子表中的每个元组在超表中恰有一个元组对应,并在继承的属性值上具有相同的值。
(10)引用类型:数据类型可以嵌套定义,在嵌套引用时,不是引用对象本身,而是个用对象标识符(即指针),这种指针被称为引用类型。
数据库考试答案

第四章习题习题1.什么是数据库的安全性?答:数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄露、更改或破坏。
2.数据库的安全性和计算机系统的安全性有什么关系?答:安全性问题不是数据库系统所独有的,所有计算机系统都有这个问题。
只是在数据库系统中大量数据集中存放,而且为许多最终用户直接共享,从而使安全性问题更为突出。
数据库的安全性和计算机系统的安全性,包括操作系统、网络系统的安全性是紧密联系、相互支持的。
5.试述实现数据库安全性控制的常用方法和技术。
答:(1)用户标识和鉴别:该方法是由系统提供一定的方式让用户标识自己的名字和身份。
每次用户要求进入系统时,由系统进行核对,通过鉴定后才能提供系统的使用权。
(2)存取控制:通过用户权限定义和合法权检查确保只有合法权限的用户访问数据库,所有未被授权的人员无法存取数据。
例如C2级中的自主存取控制(DAC),B1级中的强制存取控制(MAC)。
(3)视图机制:为不同的用户定义不同的视图,把数据对象限制在一定的范围内,通过视图机制把要保密的数据对无权存取的用户隐藏起来,从而自动地对数据提供一定程度的安全保护。
(4)审计:建立审计日志,把用户对数据库的所有操作自动记录在审计日志中。
DBA可以利用审计跟踪的信息,重现导致数据库现有状况的一系列事件,找出非法存取数据的人、时间和内容等。
(5)数据加密:对存储和传输的数据进行加密处理,从而使得不知道解密算法的人无法获知数据的内容。
6.什么是数据库中的自主存取控制方法和强制存取控制方法?答:自主存取控制方法:定义各个用户对不同数据对象的存取权限。
当用户对数据库访问时首先检查用户的存取权限。
防止不合法用户对数据库的存取。
强制存取控制方法:每一个数据对象被(强制地)标以一定的密级,每一个用户也被(强制地)授予某一级别的许可证。
系统规定只有具有某一许可证级别的用户才能存取某一个密级的数据对象。
7.SQL语言中提供了哪些数据控制(自主存取控制)的语句?请试举几例说明它们的使用方法。
数据库安全性练习题和答案

数据库平安性习题一、选择题1. 以下〔〕不属于实现数据库系统平安性的主要技术和方法。
A. 存取控制技术B. 视图技术C. 审计技术D. 出入机房登记和加锁2.SQL中的视图提高了数据库系统的〔〕。
A. 完整性B. 并发控制C. 隔离性D. 平安性3.SQL语言的GRANT和REVOKE语句主要是用来维护数据库的〔〕。
A. 完整性B. 可靠性C. 平安性D. 一致性4. 在数据库的平安性控制中,授权的数据对象的〔〕,授权子系统就越灵活。
A. 围越小B. 约束越细致C. 围越大D. 约束围大三、简答题1. 什么是数据库的平安性?答:数据库的平安性是指保护数据库以防止不合法的使用所造成的数据泄露、更改或破坏。
2. 数据库平安性和计算机系统的平安性有什么关系?答:平安性问题不是数据库系统所独有的,所有计算机系统都有这个问题。
只是在数据库系统量数据集中存放,而且为许多最终用户直接共享,从而使平安性问题更为突出。
系统平安保护措施是否有效是数据库系统的主要指标之一。
数据库的平安性和计算机系统的平安性,包括操作系统、网络系统的平安性是严密联系、相互支持的,3.试述实现数据库平安性控制的常用方法和技术。
答:实现数据库平安性控制的常用方法和技术有:1)用(户标识和鉴别:该方法由系统提供一定的方式让用户标识自己的名字或身份。
每次用户要求进入系统时,由系统进展核对,通过鉴定后才提供系统的使用权。
2)存取控制:通过用户权限定义和合法权检查确保只有合法权限的用户访问数据库,所有未被授权的人员无法存取数据。
例如C2级中的自主存取控制〔DAC〕,B1级中的强制存取控制〔MAC〕;3)视图机制:为不同的用户定义视图,通过视图机制把要的数据对无权存取的用户隐藏起来,从而自动地对数据提供一定程度的平安保护。
4)审计:建立审计日志,把用户对数据库的所有操作自动记录下来放入审计日志中,DBA可以利用审计跟踪的信息,重现导致数据库现有状况的一系列事件,找出非法存取数据的人、时间和容等。
数据库安全考试

数据库安全考试(答案见尾页)一、选择题1. 数据库系统中,以下哪个角色负责管理用户权限和访问控制?A. 数据库管理员(DBA)B. 系统分析师C. 应用程序员D. 数据库开发人员2. 在数据库备份策略中,以下哪个选项提供了数据恢复的最大灵活性?A. 完全备份B. 增量备份C. 差异备份D. 日志备份3. 数据库隔离级别中,哪个级别允许事务处理并发执行,同时保持数据一致性?A. 读未提交(Read Uncommitted)B. 读已提交(Read Committed)C. 可重复读(Repeatable Read)D. 串行化(Serializable)4. 在数据库性能优化中,以下哪个查询操作通常最耗时?A. 选择性查询B. 复杂查询C. 非选择性查询D. 并发查询5. 在数据库管理系统中,哪个组件负责验证用户的身份?A. 数据库服务器B. 数据库管理系统(DBMS)C. 数据定义语言(DDL)D. 数据库管理员(DBA)6. 在数据库备份策略中,以下哪个选项可以最小化数据丢失的风险?A. 全备份B. 增量备份C. 差异备份D. 日志备份7. 在数据库设计中,以下哪个概念描述了数据的结构化集合?A. 表(Table)B. 查询(Query)C. 报表(Report)D. 视图(View)8. 在数据库系统中,以下哪个操作可以确保数据的完整性和一致性?A. 插入操作B. 更新操作C. 删除操作D. 查询操作9. 在数据库安全性中,以下哪个措施可以限制未经授权的用户访问数据库?A. 强制用户使用强密码B. 实施访问控制列表(ACL)C. 使用加密技术保护敏感数据D. 定期进行安全审计10. 在数据库管理系统中,以下哪个命令用于创建一个新的数据库?A. CREATE DATABASEB. ALTER DATABASEC. DROP DATABASED. DELETE DATABASE11. 数据库安全性的三个层次及其在数据库管理中的作用是什么?A.物理安全、逻辑安全和访问控制B.用户身份验证、授权和数据加密C.备份、恢复和故障转移D.并发控制、数据完整性和数据安全性12. 在数据库系统中,什么是权限和角色管理?它们的主要目的是什么?A. 权限和角色管理是确保只有经过授权的用户才能访问数据库中的特定对象(如表、视图、存储过程等)的一种机制。
数据库第1-9章自测题(4)

第一章自测题1.DBMS是()A.数据库B.数据库系统C.数据库应用软件D.数据库管理软件2.DB、DBMS和DBS三者间的关系是()A.DB包括DBMS和DBSB.DBS包括DB和DBMSC.DBMS包括DBS和DBD.DBS与DB和DBMS 无关3.关系数据模型的基本数据结构是()A.树B.图C.索引D.关系4.层次数据模型的基本数据结构是()A.树B.图C.索引D.关系5.层次模型实现数据之间联系的方法是()A.连接B.指针C.公共属性D.关系6.常见的数据模型是()A.层次模型、网状模型、关系模型B.概念模型、实体模型、关系模型C.对象模型、外部模型、内部模型D.逻辑模型、概念模型、关系模型7.提供数据库定义、数据操纵、数据控制和数据库维护功能的软件称为()A.OSB.DSC.DBMSD.DBS参考答案:1.D 2.B 3.D 4.A 5.B 6.A 7.C第二章自测题1.下面关于关系性质的说法,错误的是()A.表中的一行称为一个元组B.行与列交叉点不允许有多个值C.表中的一列称为一个属性D.表中任意两行可能相同2."元数据"是指()A.数据结构的描述B.数据项的描述C.数据的来源D.基本数据3.在数据库系统中,空值是()A.0B.空格C.空字符串D.不确定4.实体完整性是指关系中()A.不允许有空行B.主码不允许取空值C.属性值外码取空值D.允许外码取空值5.设关系R和S具有相同的结构,由属于S但不属于R的元组构成的关系,记为()A.R﹣SB.S﹣RC.R∪SD.S∩S6.已知关系R和S,R∩S等价于()A.(R﹣S)﹣SB.S﹣(S﹣R)C.(S﹣R)﹣RD.S﹣(R﹣S)7.实体完整性规则约束()A.侯选码B.主码C.外码D.超码参考答案:1.D 2.A 3.D 4.B 5.C 6.B 7.B第三章自测题1.SQL语言是()A.高级语言B.宿主语言C.汇编语言D.非过程化语言2.在SQL语言查询语句中,SELECT子句实现关系代数的()A.投影运算B.选择运算C.连接运算D.交运算3.在SQL语言查询语句中,WHERE子句实现关系代数的()A.投影运算B.选择运算C.连接运算D.交运算4.为在查询结果中去掉重复元组,要使用保留字()A.UNIQUEB.COUNTC.DISTINCTD.UNION5.SQL语言中,用于实现安全性控制的语句是()MITB.GRANTC.ROLLBACKD.SAFE6.当关系R和S做自然联接时,能够保留R中不满足连接条件元组的操作是()A.左外联接B.右外联接C.内部连接D.全外联接7.下列聚合函数中不忽略空值(null)的是()A.SUN(列名)B.MAX(列名)C.AVG(列名)D.COUNT(*)8.SQL语言中,下列涉及空值的操作,不正确的是()A.AGE IS NULLB.AGE IS NOT NULLC.AGE=NULLD.NOT(AGE IS NULL)9.SQL语言中,删除一个表的命令是()A.CLEAR TABLEB.DROP TABLEC.DELETE TABLED.REMOVE TABLE10.设有一个关系:DEPT(DNO,DNAME),如果要找出倒数第三个字母为W,并且至少包含4个字母的DNAME,则查询条件子句应写成 WHERE DNAME LIKE()A.'_ _W _%'B.'_ W _ %'C.'_ W _ _'D.' _ %W _ _'参考答案:1.D 2.A 3.B 4.C 5.B 6.A 7.D 8.C 9.B 10.D第四章自测题1.数据库设计中,概念模型()A.依赖于计算机的硬件B.独立于DBMSC.依赖于DBMSD.独立于计算机的硬件和DBMS2.设在某个公司环境中,一个部门有多名职工,一名职工只能属于一个部门,则部门与职工之间的联系是()A.一对一B.一对多C.多对多D.不确定3.在数据库设计中,子类与超类存在着()A.相容性联系B.调用的联系C.继承性的联系D.一致性联系4.反映现实世界中实体及实体间联系的信息模型是()A.关系模型B.层次模型C.网状模型D.E-R模型5.当同一个实体集内部实体之间存在着一个M:N的关系时,根据E-R模型转换成关系模型的规则,转换成关系的数目为()A.1B.2C.3D.46.假设在一个E-R模型中,存在10个不同的实体集和12个不同的二元联系(二元联系是指两个实体集之间的联系),其中3个1:1联系、4个1:N、5个M:N联系,则这个E-R模型转换成关系的数目可能是()A.14B.15C.19D.227.在ER模型转换成关系模型的过程中,下列不正确的做法是()A.所有联系转换成一个关系B.所有实体集转换成一个关系C.1:N联系不必转换成关系D.M:N联系转换成一个关系参考答案:1.D 2.B 3.C 4.D 5.C 6.B 7.A第五章自测题1.如果关系模式R属于1NF,且每个非主属性都完全函数依赖于R的主码,则R属于()A.2NFB.3NFC.BCNFD.4NF2.已知关系R(P,Q,M,N),F是R上成立的函数依赖集,F={(P→Q,Q→M)},则R的侯选码是()A.PB.QC.PQD.PN3.已知学生关系:R(学号,姓名,系名称,系地址),每一名学生属于一个系,每一个系有一个地址,则R属于()A.1NFB.2NFC.3NFD.4NF4.下列陈述中,错误的是()A.2NF必然属于1NFB.3NF必然属于2NFC.3NF必然属于BCNFD.BCNF必然属于3NF5.已知关系R(A,B,C,D),F是R上成立的函数依赖集,F={(A,B→C,D),B→D},则R 应分解成()A.R1(A,B)和R2(C,D)B.R1(A,B,C)和R2(B,D)C.R1(A,C)和R2(B,D)D.R1(A,B,D)和R2(B,C)6.在订单管理系统中,客户一次购物(一张订单)可以订购多种商品。
数据库基础及其应用第九章课后作业

第九章 SQL Server数据库简单应用一、单选题1.使用“CREATE DATABASE AAA”命令所建立数据库文件的初始大小是(A)字节。
A. 1MB. 2MC. 3MD. 4M2.下面关于索引的描述不正确的是(B)。
A. 索引是一个指向表中数据的指针B. 索引是在列上建立的一种数据库对象C. 索引的建立和撤消对表的数据毫无影响D. 表的建立和撤消对索引毫无影响3.下面关于聚集索引和非聚集索引说法正确的是(B)。
A. 每个表只能建立一个非聚集索引B. 非聚集索引需要较多的硬盘空间和内存C. 一张表上不能同时建立聚集和非聚集索引D. 一个复合索引只能是聚集索引4.“Create Unique Index AAA On 学生表(学号)”将在学生表上创建名为AAA的(A)。
A. 惟一索引B. 聚集索引C. 复合索引D. 唯一聚集索引5.下列标识符可以作为局部变量使用(C)。
A. [@Myvar]B. My varC. @MyvarD. @My var6.Transact SQL支持的程序结构语句主要有(A)。
A. Begin…EndB. If…Then…ELSEC. Do CaseD. Do While7.属于事务控制的语句是(A)。
A. Begin Tran、Commit、RollBackB. Begin、Continue、EndC. Create Tran、Commit、RollBackD. Begin Tran、Continue、End8.SQL Server触发器主要针对下列语句创建(B)。
A. SELECT、INSERT、DELETEB. INSERT、UPDATE、DELETEC. SELECT、UPDATE、INSERTD. INSERT、UPDATE、CREATE9.下面关于索引的描述不正确的是(B)。
A. 索引是一个指向表中数据的指针B. 索引是在元组上建立的一种数据库对象C. 索引的建立和撤消对表中的数据毫无影响D. 表被撤消时将同时撤消在其上建立的索引10.以下哪种情况应尽量创建索引(A)。
数据库安全性与备份恢复考试

数据库安全性与备份恢复考试(答案见尾页)一、选择题1. 数据库安全性主要涉及哪些安全措施?A. 用户身份验证B. 角色分配C. 数据加密D. 访问控制列表2. 以下哪个选项不是数据库备份类型?A. 完全备份B. 增量备份C. 差异备份D. 日志备份3. 在数据库恢复过程中,哪种文件用来记录事务日志?A. 主数据文件B. 辅助数据文件C. 磁盘文件D. 重做日志文件4. 数据库复制主要用于哪个目的?A. 提高查询性能B. 实现数据容灾C. 优化数据库性能D. 数据库维护5. 在数据库管理中,如何更改数据库的默认排序顺序?A. 使用ALTER DATABASE语句B. 使用SET ORDER BY子句C. 使用ORDER BY子句D. 使用SELECT语句6. 以下哪个选项不是数据库索引的目的?A. 加速查询速度B. 减少数据冗余C. 支持数据完整性D. 存储数据值7. 在数据库备份中,如何选择合适的备份策略?A. 根据数据重要性和变化频率进行选择B. 根据备份时间窗口进行选择C. 根据系统资源和成本进行选择D. 根据数据库类型和版本进行选择8. 数据库备份可以用于哪些场景?A. 灾难恢复B. 数据迁移C. 性能优化D. 数据归档9. 在数据库恢复过程中,如何利用重做日志文件?A. 进行点时间点的恢复B. 进行增量备份的恢复C. 进行完全备份的恢复D. 进行差异备份的恢复10. 以下哪个选项不是数据库审计的作用?A. 检查潜在的安全威胁B. 验证数据的完整性和准确性C. 保证数据的可用性D. 限制非法访问11. 数据库安全性的三个主要威胁是什么?A. 非法用户访问B. 病毒感染C. 黑客攻击D. 自然灾害12. 数据库备份的基本原则是什么?A. 最小化备份数据量B. 定期备份C. 快速恢复D. 与业务需求相匹配的备份策略13. 在数据库恢复中,哪种类型的恢复是基于时间点?A. 完全恢复B. 时间点恢复C. 增量恢复D. 差量恢复14. 以下哪个不是数据库事务的特点?A. 原子性B. 一致性C. 隔离性D. 共享性15. 在数据库管理系统中,哪一个概念描述了数据的逻辑结构?A. 模式B. 内模式C. 外模式D. 物理模式16. 数据库审计的主要目的是什么?A. 监控和记录所有用户活动B. 保证数据的完整性C. 提供数据安全性D. 防止未经授权的访问17. 在SQL语言中,哪个命令用于创建一个新表?A. CREATE TABLEB. ALTER TABLEC. DROP TABLED. MODIFY TABLE18. 数据库复制在灾难恢复中的作用是什么?A. 提供冗余数据B. 实现数据分布C. 支持负载均衡D. 提高性能19. 在数据库管理中,如何确保数据的一致性和完整性?A. 使用约束B. 实施触发器C. 进行数据验证D. 采用事务控制20. 在数据库备份中,哪种备份类型可以最大程度地减少数据丢失?A. 全备份B. 增量备份C. 差量备份D. 快照备份21. 数据库安全性的三个主要威胁是什么?A. 非法访问B. 数据泄露C. 系统故障D. 人为错误22. 以下哪个不是数据库备份类型?A. 完全备份B. 增量备份C. 差异备份D. 日志备份23. 在数据库恢复中,什么是恢复时间目标(RTO)?A. 需要恢复的数据量B. 需要恢复的时间C. 需要恢复的数据库对象D. 需要恢复的备份文件24. 以下哪个是数据库复制的主要目的?A. 提高性能B. 提高可用性C. 提高数据一致性D. 提高数据完整性25. 在数据库管理中,什么是权限管理?A. 确定不同用户对数据库对象的访问级别B. 确定不同用户对数据库数据的访问级别C. 确定不同用户对数据库权限的使用级别D. 确定不同用户对数据库维护的访问级别26. 以下哪个是数据库审计的目的?A. 监控和记录所有用户的数据库活动B. 确保数据库文件的完整性C. 防止未经授权的访问D. 提高数据库性能27. 在数据库恢复过程中,哪个步骤是“撤退阶段”?A. 恢复数据B. 重建索引C. 还原备份D. 关闭数据库28. 以下哪个是数据库分区的作用?A. 提高查询性能B. 提高数据冗余C. 提高数据安全性D. 提高数据备份效率29. 在数据库管理中,什么是数据归档?A. 对不常用的数据进行存储B. 对经常使用的数据进行存储C. 对历史数据的存储D. 对需要审计的数据进行存储30. 以下哪个是数据库集群的定义?A. 两个或多个数据库服务器组成一个集群,以提高性能和可用性B. 两个或多个数据库服务器组成一个集群,以提高性能和数据安全性C. 两个或多个数据库服务器组成一个集群,以提高可用性和数据完整性D. 两个或多个数据库服务器组成一个集群,以提高数据一致性和可用性31. 数据库安全性的重要性体现在哪些方面?A. 数据泄露可能导致财务损失B. 数据篡改可能破坏业务流程C. 非法访问可能导致法律风险D. 数据丢失可能导致无法恢复的业务中断32. 以下哪个选项是数据库备份与恢复计划的主要组成部分?A. 介质备份B. 自动备份C. 增量备份D. 全量备份33. 在数据库备份中,全量备份是指对数据库中的所有数据进行检查并备份,这通常在什么情况下进行?A. 数据库正常运行时B. 数据库维护时C. 数据库故障后D. 数据库升级时34. 在数据库恢复过程中,以下哪个步骤是用来恢复损坏的数据文件的?A. 进行数据一致性检查B. 使用备份文件替换损坏文件C. 恢复事务日志D. 重启数据库35. 数据库备份策略的三个关键因素是什么?A. 备份频率B. 备份类型(全量/增量)C. 备份数据的存储位置D. 备份数据的冗余级别36. 在数据库恢复过程中,如果事务日志已经损坏,应该采取哪种措施?A. 重新创建事务日志B. 从备份中恢复事务日志C. 启动数据库恢复程序D. 关闭数据库37. 数据库复制技术在提高系统可用性方面起到了什么作用?A. 通过主从复制实现负载均衡B. 通过主从复制实现数据备份C. 通过主从复制实现故障转移D. 通过主从复制实现读写分离38. 在数据库管理中,如何验证数据库备份的成功执行?A. 检查备份文件的完整性B. 检查备份日志的长度C. 检查备份是否包含所有需要的数据D. 检查备份是否按计划执行39. 数据库管理员在进行日常维护时,需要定期检查的内容包括哪些?A. 硬件状态B. 数据库性能指标C. 数据库备份日志D. 系统安全设置40. 在数据库安全性控制中,以下哪种手段可以限制远程用户访问数据库?A. 设置强密码策略B. 配置防火墙限制访问C. 实施访问控制列表(ACL)D. 加密敏感数据二、问答题1. 什么是数据库安全性的目标?请列举三个关键措施来实现数据库安全性。
数据库技术与应用SQLServer2008第9章习题参考答案

数据库技术与应用SQLServer2008第9章习题参考答案第9章习题解答1.思考题(1)VB对象的3要素是指什么?它们的作用是什么?答:对象的属性、方法、事件就称为对象的三要素。
1)属性属性描述对象的性质或特征,即该对象是什么样的。
2)方法方法反映对象的行为,即该对象会干什么。
3)事件事件指明对象在什么条件下发生什么事情,即在什么条件下执行哪段代码。
(2)什么是变量的作用域?作用域有哪些类型?什么是变量的生存期?生存期有哪些类型?答:1)变量的作用域是指变量的有效范围。
2)根据作用域,变量可分为局部变量、窗体级变量、模块级变量、全局变量。
局部变量:在过程体内部定义,其作用域是从定义起到所在语句块或过程结束为止的局部范围,其他地方不能使用。
窗体级变量:是在窗体代码的通用声明区用Dim或Private关键字定义的变量,它不属于该窗体的任何过程,可以被本窗体内的所有过程访问,而不能为其他窗体或模块使用。
窗体级变量与窗体的生存期一样,只要窗体不消失,它就不消失。
模块级变量:与窗体级变量同级别,它是在模块的“通用声明”区用Dim或Private 关键字定义的变量。
它不属于该模块的任何过程,可以被本模块内的所有过程访问,而不能用在其他模块或窗体中。
全局变量:是在窗体或模块的通用声明区用Public关键字进行定义的变量,它在整个工程的所有过程中均可使用,且在应用程序运行过程中一直存在。
3)变量的生存期表示它可以存储值的时间周期。
在生存期内变量的值可以更改,但变量总是存储某些值。
即指在程序执行的动态过程中,变量在哪个阶段是存在的。
4)局部变量根据生存期分为动态局部变量和静态局部变量,两者的区别是:(a)动态局部变量的生存期是:程序执行到定义该变量的Dim 语句时,在内存建立起该变量,此时该变量“诞生”了;程序继续往下执行到该变量所在的程序块(或过程)结束时,该变量“死亡”,其代表的值也不复存在。
如果该变量所在过程再次执行,再次执行到定义该变量的Dim语句则一个新的变量“诞生”,与上次已“死亡”的同名的变量毫无关系。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第九章数据库安全性
一、选择题
1. 以下()不属于实现数据库系统安全性的主要技术和方法。
A. 存取控制技术
B. 视图技术
C. 审计技术
D. 出入机房登记和加锁
2. SQL中的视图提高了数据库系统的()。
A. 完整性
B. 并发控制
C. 隔离性
D. 安全性
3. SQL语言的GRANT和REVOKE语句主要是用来维护数据库的()。
A. 完整性
B. 可靠性
C. 安全性
D. 一致性
4. 在数据库的安全性控制中,授权的数据对象的(),授权子系统就越灵活。
A. 范围越小
B. 约束越细致
C. 范围越大
D. 约束范围大
三、简答题
1. 什么是数据库的安全性
答:数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄露、更改或破坏。
2. 数据库安全性和计算机系统的安全性有什么关系
答:安全性问题不是数据库系统所独有的,所有计算机系统都有这个问题。
只是在数据库系统中大量数据集中存放,而且为许多最终用户直接共享,从而使安全性问题更为突出。
系统安全保护措施是否有效是数据库系统的主要指标之一。
数据库的安全性和计算机系统的安全性,包括操作系统、网络系统的安全性是紧密联系、相互支持的,
3.试述实现数据库安全性控制的常用方法和技术。
答:实现数据库安全性控制的常用方法和技术有:
1)用户标识和鉴别:该方法由系统提供一定的方式让用户标识自己的名字或身份。
每次用户要求进入系统时,由系统进行核对,通过鉴定后才提供系统的使用权。
2)存取控制:通过用户权限定义和合法权检查确保只有合法权限的用户访问数据库,所有未被授权的人员无法存取数据。
例如C2级中的自主存取控制(DAC),B1级中的强制存取控制(MAC);
3)视图机制:为不同的用户定义视图,通过视图机制把要保密的数据对无权存取的用户隐藏起来,从而自动地对数据提供一定程度的安全保护。
4)审计:建立审计日志,把用户对数据库的所有操作自动记录下来放入审计日志中, DBA可以利用审计跟踪的信息,重现导致数据库现有状况的一系列事件,找出非法存取数据的人、时间和内容等。
5)数据加密:对存储和传输的数据进行加密处理,从而使得不知道解密算法的人无法获知数据的内容。
具体内容请参见《概论》。
4.什么是数据库中的自主存取控制方法和强制存取控制方法
答:自主存取控制方法:定义各个用户对不同数据对象的存取权限。
当用户对数据库访问时首先检查用户的存取权限。
防止不合法用户对数据库的存取。
强制存取控制方法:每一个数据对象被(强制地)标以一定的密级,每一个用户也
被(强制地)授予某一个级别的许可证。
系统规定只有具有某一许可证级别的用户才能存取某一个密级的数据对象。
*解析:自主存取控制中自主的含义是:用户可以将自己拥有的存取权限“自主”地授予别人。
即用户具有一定的“自主”权。
语言中提供了哪些数据控制(自主存取控制)的语句请试举几例说明它们的使用方法。
答:
SQL中的自主存取控制是通过GRANT 语句和 REVOKE 语句来实现的。
如:
GRANT SELECT, INSERT ON Student TO 王平 WITH GRANT OPTION;
就将Student表的SELECT和INSERT权限授予了用户王平,后面的“WITH GRANT OPTION”子句表示用户王平同时也获得了“授权”的权限,即可以把得到的权限继续授予其他用户。
REVOKE INSERT ON Student FROM 王平 CASCADE;
就将Student表的INSERT权限从用户王平处收回,选项 CASCADE 表示,如果用户王平将 Student 的 INSERT 权限又转授给了其他用户,那么这些权限也将从其他用户处收回。
6.今有两个关系模式:
职工(职工号,姓名,年龄,职务,工资,部门号)
部门(部门号,名称,经理名,地址,电话号)
请用SQL的GRANT和REVOKE语句(加上视图机制)完成以下授权定义或存取控制功能:
(a) 用户王明对两个表有SELECT权力;
GRANT SELECT ON 职工,部门
TO 王明;
(b) 用户李勇对两个表有INSERT和DELETE权力;
GRANT INSERT,DELETE ON 职工,部门 TO 李勇;
(c) *每个职工只对自己的记录有SELECT权力;
GRANT SELECT ON 职工 WHEN USER()= NAME TO ALL;
这里假定系统的GRANT语句支持WHEN子句和USER()的使用。
用户将自己的名字作为ID。
注意,不同的系统这些扩展语句可能是不同的。
读者应该了解你使用的DBMS产品的扩展语句。
(d) 用户刘星对职工表有SELECT权力,对工资字段具有更新权力;
GRANT SELECT,UPDATE(工资) ON 职工
TO 刘星;
(e) 用户张新具有修改这两个表的结构的权力;
GRANT ALTER TABLE ON 职工,部门
TO 张新;
(f) 用户周平具有对两个表所有权力(读,插,改,删数据),并具有给其他用户授权的权力;
GRANT ALL PRIVILIGES ON 职工,部门 TO 周平 WITH GRANT OPTION;
(g) 用户杨兰具有从每个部门职工中SELECT最高工资,最低工资,平均工资的权力,他不能查看每个人的工资。
答:
首先建立一个视图。
然后对这个视图定义杨兰的存取权限。
CREATE VIEW 部门工资 AS
SELECT 部门.名称,MAX(工资),MIN(工资),AVG(工资)
FROM 职工,部门
WHERE 职工.部门号 = 部门. 部门号
GROUP BY 职工.部门号;
GRANT SELECT ON 部门工资 TO 杨兰;
7.把习题8中(a)~(g) 的每一种情况,撤销各用户所授予的权力。
答:
(a)
REVOKE SELECT ON 职工,部门
FROM 王明;
(b)
REVOKE INSERT,DELETE ON 职工,部门
FROM 李勇;
(c)
REOVKE SELECT ON 职工
WHEN USER()= NAME
FROM ALL;
这里假定用户将自己的名字作为ID,且系统的REOVKE语句支持WHEN子句,系统也支持USER()的使用。
(d)
REVOKE SELECT,UPDATE ON 职工
FROM 刘星;
(e)
REVOKE ALTER TABLE ON 职工,部门
FROM 张新;
(f)
REVOKE ALL PRIVILIGES ON 职工,部门
FROM 周平;
(g)
REVOKE SELECT ON 部门工资
FROM 杨兰;
DROP VIEW 部门工资;
8.为什么强制存取控制提供了更高级别的数据库安全性
答:
强制存取控制(MAC)是对数据本身进行密级标记,无论数据如何复制,标记与数据是一个不可分的整体,只有符合密级标记要求的用户才可以操纵数据,从而提供了更高级别的安全性。
9.理解并解释MAC机制中主体、客体、敏感度标记的含义。
答:
主体是系统中的活动实体,既包括DBMS所管理的实际用户,也包括代表用户的各进程。
客体是系统中的被动实体,是受主体操纵的,包括文件、基表、索引、视图等。
对于主体和客体,DBMS为它们每个实例(值)指派一个敏感度标记(Label)。
敏感度标记被分成若干级别,例如绝密(Top Secret)、机密(Secret)、可信(Confidential)、公开(Public)等。
主体的敏感度标记称为许可证级别(Clearance Level),客体的敏感度标记称为密级(Classification Level)。
10.什么是数据库的审计功能,为什么要提供审计功能
答:
审计功能是指DBMS的审计模块在用户对数据库执行操作的同时把所有操作自动记录到系统的审计日志中。
因为任何系统的安全保护措施都不是完美无缺的,蓄意盗窃破坏数据的人总可能存在。
利用数据库的审计功能,DBA可以根据审计跟踪的信息,重现导致数据库现有状况的一系列事件,找出非法存取数据的人、时间和内容等。
11.统计数据库中存在何种特殊的安全性问题
答:
统计数据库允许用户查询聚集类型的信息,如合计、平均值、最大值、最小值等,不允许查询单个记录信息。
但是,人们可以从合法的查询中推导出不合法的信息,即可能存在隐蔽的信息通道,这是统计数据库要研究和解决的特殊的安全性问题。
*12. 试述你了解的某一个实际的DBMS产品的安全性措施。
答:
不同的DBMS产品以及同一产品的不同版本的安全措施各不相同,仁者见仁,智者见智,请读者自己了解。
《概论》上简单介绍了有关ORACLE数据库的安全性措施。