数据库原理及应用 第4-5章-数据库安全性和完整性(2学时)精要.pptVIP

  • 4
  • 0
  • 约1.66千字
  • 约 42页
  • 2017-04-21 发布于湖北
  • 举报

数据库原理及应用 第4-5章-数据库安全性和完整性(2学时)精要.ppt

数据库原理及应用 第4-5章-数据库安全性和完整性(2学时)精要

第四章 数据库安全性;数据库的安全性:保护数据库,防止因用户非法使用数据库造成数据泄露、更改或破坏。;一 计算机安全性概论 二 数据库安全性控制 三 统计数据库安全性 *四 Oracle数据库的安全性措施;技术问题 计算机安全理论与策略 计算机安全技术 管理问题 安全管理 安全评价 安全产品;技术安全类;一 计算机安全性概论 二 数据库安全性控制;1. 数据库安全概述;计算机系统中的安全模型;2. 用户标识与鉴别;3. 存取控制:定义存取权限+检查存取权限;读规则:许可证级别=密级,才能读 写规则:许可证级别=密级,才能写;MAC与DAC评价;4. 审计;;5. 数据加密;DBMS中的数据加密;一 计算机安全性概论 二 数据库安全性控制 三 统计数据库安全性;允许用户查询聚集类型的信息(例如合计、平均值等),但不允许查询单个记录信息。;例:下面两个查询都是合法的: 1.本公司共有多少女高级程序员? 2.本公司女高级程序员的工资总额是多少? 如果第一个查询的结果是“1” 则第二个查询的结果显然就是这个程序员的工资数。 ;例2:用户A发出下面两个合法查询: 1.用户A和其他N个程序员的工资总额是多少? 2.用户B和其他N个程序员的工资总额是多少? 查询1结果:X,查询2结果:Y,A=Z, 则B=Y-(X-Z)。 原因:两个查询之间有很多重复的数据项;可以证明,在上述两条规定下,如果想获知用户B的工资额,至少需要进行1+(N-2)/M次查询。;第五章 数据库完整性;什么是数据库的完整性? 定义:是指数据的正确性和相容性 目的:防止不合语义的数据进入数据库;一、 完整性约束条件;对象状态 动态列级约束 动态元组约束 动态关系约束 动态 ④ ⑤ ⑥ 静态列级约束 静态元组约束 静态关系约束 静态 ① ② ③ ;静态列级约束;动态列级约束;;一 完整性约束条件 二 完整性控制;1. 完整性控制机制;D(Data)约束作用的数据对象 O(Operation)触发检查的操作 什么操作触发检查?立即检查or延迟检查? A(Assertion)声明或满足条件 C(Condition)谓词 P(Procedure)触发的过程;例1:在“学号不能为空”的约束中 D 作用对象Sno O 插入或修改Student 元组时 A Sno不能为空 C 无(可作用于所有记录的Sno属性) P 拒绝执行该操作;例2:在“教授工资不得低于1000元”的约束中 D 作用对象为Sal属性 O 插入或修改元组时 A Sal大于等于1000 C 职称=′教授′ (仅作用于职称=‘教授’的记录) P 拒绝执行该操作;2. 完整性约束的执行;3. 参照完整性的实现;(1)外码是否可以接受空值的问题;(2)删除被参照关系中元组的问题;例:要删除Student关系中Sno=950001的元组, 而SC关系中有4个元组的Sno都等于950001。 级联删除:警惕连锁反应(course) 受限删除 置空删除;(3)在参照关系中插入元组时的问题;例:向SC关系插入(99001,1,90)元组,而Student关系中尚没有Sno=99001的学生。 受限插入:拒绝插入(99001,1,90)元组 递归插入:先向Student插入Sno=99001的元组,然后向SC关系插入(99001,1,90)元组。;(4)修改被参照关系中主码的问题;小结

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档