1、数据库安全与安全数据库信息安全的基本概念n信息安全可用性机密性完整性非否认性可控性n威胁、脆弱性和攻击威胁是信息遭到破坏、更改和泄露的可能性脆弱性是可能被利用来侵害雄获系统内信息的任何弱点攻击是利用计算机系统的弱点来达到特定目的所故意进行的行为n安全防卫策略预防和避免转移减少脆弱性实时检测非实时检测减少影响实时恢复非实时恢复n可信计算基(TCB)计算机系统内负责执行安全策略的组合体包括硬件、固件和软件安全机制n标识和认证用户向系统出示自己的身份证明n访问控制主体:以用户名义进行资源访问的进程、事务等实体客体:把被访问的资源使只有被授予相应访问权限的主体才能对客体进行相应的操作n审计记录和察看所
2、有与安全相关的时间n客体重用保证可重用的客体(如磁盘、内存空间等)被释放后,重新分配之前应该清除其中数据,以防止其他主体从中获取残余机密数据n可信路径保证使用终端的用户可以直接与可信计算基通信的机制数据库安全问题n数据库的安全的价值现代信息系统中存储了大量的商业、保密信息n网络和操作系统的安全是否是足够的?数据库的很多特征会破坏系统的安全n存储过程数据库安全威胁n后果分类非授权的信息泄漏非授权的数据修改拒绝服务n发生方式自然或以外灾害系统软硬件错误人为错误n威胁的主体授权用户恶意代理数据库安全需求n防止非法数据访问n防止推理n保证数据库的完整n保证数据的操作完整性n数据的语义完整性n审计和日志
3、n标识和认证n机密数据管理n多级保护n界限数据库系统安全与操作系统安全n数据库与操作系统的体系结构n数据库与操作系统的安全需求不同数据库管理系统操作系统硬件数据库管理系统操作系统硬件数据库管理系统硬件安全模型n自主访问控制(discretionary access control,DAC)决定用户能否访问某数据对象的依据是系统中是否存在明确授权每个对象都有且仅有一个属主,他制定对象的保护策略n强制访问控制(mandatory access control,MAC)所有的权限都归于系统集中管理,保证信息的流动始终处于系统的控制下主体和客体均有相应的安全属性,系统根据安全属性来控制主体对客体的访问
4、访问控制矩阵模型nHRU模型Harrison、Ruzzo和Ullman在1976年提出的一种基本的自主访问控制模型n基本操作赋予存储权限、删除存储权限、创建主体、创建客体、删除主体、删除客体、O1O2S1读读、写S2读、写基于角色的访问控制模型n起始于20世纪90年代n最早出现在1992年Ferraiolo和Kuhn的文章中nRBAC的核心用户集(users)角色集(roles)对象集(objects)操作集(operaors)特权集(perm)会话集(sessions)基于角色的访问控制模型USERSROLES用户分配ObjectsOperatorsPERMS特权分配SESSIONSRBAC
5、核心模型基于角色的访问控制模型USERSROLES用户分配USERSROLESPERMS特权分配SESSIONS带角色继承的RBAC模型角色继承多级安全数据库n多级数据库管理系统体系结构高级运行结构可信主体结构集中式/核心式体系结构分布式/复制式体系结构完整性锁结构高级运行结构n单级DBMS的一种特殊运行方式n运行在安全操作系统的最高级n所有用户都是最高级别n完全依赖于操作系统的TCBn没有数据内容的分级n必须严格监控和管理用户的行为可信主体结构多级(可信)DBMS可信操作系统高级别用户低级别用户高级别数据分片低级别数据分片集中式/核心式体系结构高级别DBMS后端可信操作系统高级别用户低级别用
6、户高级别数据分片低级别数据分片低级别DBMS后端分布式/复制式体系结构高级别DBMS可信前端(TCB)高级别用户低级别用户高级数据低级数据低级别DBMS低级数据完整性锁结构可信过滤层加密单元/安全操作系统高级别用户低级别用户非可信DBMS数据库非可信前端非可信前端多级关系模型n元组有安全标记,每个属性有安全标记RS(A1,A2,An)-RS(A1,C1,A2,C2,An,Cn,TC),AK为键卫星名任务目标安全级别探索者 U科技探索 UA火山 UU旅行者 U搜集情报 SB国家 SS秘密级视图卫星名任务目标安全级别探索者 U科技探索 UA火山 UU旅行者 UNULL UNULL UU公开级视图多级安全模型的主要问题n原则上写下读n实体与实例实体的标示多实例n完整性约束多级关系模型n插入操作后的关系卫星名任务目标安全级别探索者 U科技探索 UA火山 UU旅行者 U搜集情报 SB国家 SS旅行者 U科技探索 UB火山 UU秘密级视图卫星名任务目标安全级别探索者 U科技探索 UA火山 UU旅行者 U科技探索 UB火山 UU公开级视图多级关系完整性n实体完整性AiAK=taiNULLAi,Aj AK=tci=tcjAiAK=tcitcakn多实例完整性同一级别的元组间不存在多实例n基本操作插入、删除、更新