您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 数据库系统原理第四章――安全性控制
1第4章数据库安全性4.1基本原理4.1.1概述1.概念——防止对DB中的数据的非授权使用。(避免泄露、更改或破坏)。在妥当的时刻,以妥当的形式,向妥当的人,提供妥当的数据。2应用DBMSOSDB用户签别存取控制安全保护密码存储2.安全控制机制3.DBS中的一般方法1)用户鉴别2)存取控制3)密码存储4.1.2用户鉴别1.口令用户名用户标识……口令常用的一种用户标识①固定口令②随机口令③口令时限2.可读声份卡片声波、指纹、签名、图像34.1.3访问控制——防止非授权访问。1)用户权限定义生成安全规则或者授权规则。用户名数据对象名操作类型其它数据对象名:模式、子模式、表、属性(不同粒度)操作类型:Create,Select,update,insert,all其它:如操作时间、范围,…2)用户权限的检查DBMS查找资料字典,并控制用户的存取权限。上述这两部分合起来可以作为DBMS的一个安全子系统。存取控制分为自主存取控制和强制存取控制,其中强制存取控制的安全级别较高。4自主存取控制(DAC):不同的用户有不同的存取权限,而且用户可以自主的将自己的权限授予其它用户。强制存取控制(MAC):(可防止非法拷贝)相关概念(主体、客体、敏感度标记、许可证级别)强制存取控制适用于对资料有严格而固定密级分类的部门。“资料”对象被标定以相应的保密级别,每个用户被授予相应每个保密级别的许可证。用户只能1)读取保密级别小于或者等于自身许可证级别的资料;2)修改保密级别大于或者等于自身许可证级别的资料。强制存取控制中,密级标记和数据是不可分割的整体。5较高安全级别的数据保护要包含较低级别的所有保护,所以在实现强制存取控制(MAC,Mandatory)时首先要实现自主存取控制(DAC,Discretionary)SQL语法分析&语义检查DAC检查MAC检查继续语义检查安全检查6最高密级主体最低密级主体强制存取控制原理:74.1.4审计控制——对用户使用系统资源(H、S)情况的登记和审查。1.功能1)设备安全审计主要审查系统资源的安全策略、各种安全保护措施、故障恢复计划等。2)操作审计各种操作的记录、分析(事务、操作类型、用户、终端、操作时间、审计时间、…)83)应用审计应用系统功能、控制逻辑、数据流正确与否的审计。4)攻击审计已发生攻击操作及危害系统安全事件的检测和审计。2.技术1)静态技术利用软件设计说明书、流程图分析、明确易被攻击的环节。2)动态技术·实际运行测试(控制逻辑,…)·性能测试(测试用例、仿真程序)3)结果验证·数据的选择、收集和分析。94.1.5数据加密——以密码文形式保存和传输数据(只有知道密钥的用户才能访问)。1.处理流程处理流程如下图所示:明文密钥加密发送接受解密密钥明文2.加密方法1.信息编码2.信息换位3.信息替换(密钥)104.1.6统计数据库安全性统计数据库允许用户查询聚集类型的信息(例如合计、平均值等),不允许查询单个记录信息。问题:存在隐蔽的信息通道可获得单个记录信息,例如由人数、最高值、总额、查询数据项的交集推算出个体信息。解决办法:规则1:查询至少要涉及N个以上记录。规则2:任意两次查询的相交数据项不能超过M个。规则3:任一用户的查询次数不能超过1+(N-2)/M。无法防止两个用户合作。新的安全技术:隐私(标识信息、敏感信息、位置信息)保护。114.2ORACLE安全控制·用户鉴别;·操作授权控制;·安全审计;·用户定义安全控制。4.2.1用户鉴别·最外层安全措施;·用户标识用户名;·最多可重复标识三次。4.2.2操作授权1.权限类别1)系统权限2)访问对象权限2、授权机制——非集中式授权。1)DBA负责授予回收系统权限。2)用户负责授予与回收其创建的访问对象的权限。123、系统权限。1)权限责制(80多种系统权限)创建会话、创建表、创建视图、创建用户……。2)角色——一组系统权限的集合,利于简化权限管理。·CONNECT角色:允许用户登录DB、查询及操纵(ALTERTABLECREATEVIEW,CREATEINDEX,DROPTABLE,DROPVIEW,DROPINDEX,GRANT,REVOKE,INSERT,UPDATE,DELETE,AUDIT,NOAUDIT等)13·RESOURCE角色:允许用户建立表(CREATETABLE)·创建该表的用户具有对该表的各种操作权限。·DBA角色:权力最大。·具有上两种角色的所有权限。·其它管理权限(如将Connect角色授予某个用户,可省掉多条GRANT语句)。14关于角色的SQL语句创建角色CREATEROLE角色名给角色授权GRANT权限[,权限]…ON对象类型对象名TO角色[,角色]…角色权限的收回REVOKE权限[,权限]…ON对象类型对象名FROM角色[,角色]…将角色授予其他角色或用户GRANT角色1[,角色2]…TO角色3[,用户1]…[WITHADMINOPTION]154、访问对象权限1)对象基本表、视图、序列、同义词、存储过程、函数2)基本表安全性(最重要)·表级·行级·列级3)表级安全性①权限ALTER、DELETE、INDEX、INSERT、SELECT、UPDATE、ALL②授权命令:GRANT③回收命令:REVOKE164)行级安全性——由视图操作授权实现(视图是表的子集,相当于行级)。①权限同上述表级。②授权命令:GRANT③回收命令:REVOKE5)列级安全性——由视图操作授权实现或在基本表上实现。①权限:·基本表:UPDATE·视图:同行级17②授权命令:GRANT例GRANTUPDATE(XH,XM)ONStudenttouser1③回收命令:REVOKESTUDENT(整个表的权回收)4.2.3安全审计1、任务:登记和监测各类操作。2、级别:①用户级②系统级3、用户级审计——用户自行设置的审计。(1)审计对象·用户创建的基本表·用户创建的的视图(2)审计内容对用户自己创建的基本表、视图的所有SQL操作的记录和监测。184、系统级审计——由DBA设置的审计。①审计对象DB一级②审计内容·GRANT·REVOKE·其它DB级操作5、说明①用户有权决定审计对象与内容AUDITALTER,UPDATEONSTUDENT(用户要求对STUDENT的ALTER、UPDATE操作实施审计)②用户有权取消审计NOAUDITALLONSTUDENT(取消对STUDENT的各种操作的审计)194.2.4用户定义安全控制1、控制内容①审计精度更细的审计精度②操作约束特殊的操作控制(如操作时间限制)2、控制技术——建立触发器。例:(不能在星期六、星期天删除student中的数据)。CREATEORREPLACETRIGGERTGR-STUDENTBEFOREDELETEONSTUDENTASBEGINIF(TO_CHAR(Sysdate,’DY’)IN(‘SAT’,’SUN’))THENRAISE-APPLICATION-ERROR(-20506,此时,你不能册除该数据);ENDIFEND
本文标题:数据库系统原理第四章――安全性控制
链接地址:https://www.777doc.com/doc-4056486 .html