数据库与安全课件-第四章-数据库的访问控制-.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《数据库与安全课件-第四章-数据库的访问控制-.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 安全 课件 第四 访问 控制
- 资源描述:
-
1、1 第第 四四 章章数据库的访问控制数据库的访问控制2 访问控制策略概述访问控制策略概述 自主访问控制自主访问控制 4.4 4.4 多级安全访问控制模型多级安全访问控制模型34.1 4.1 访问控制策略概述访问控制策略概述4 安全访问控制的三要素安全访问控制的三要素5在数据库中,访问控制在数据库中,访问控制可以分为两大类:可以分为两大类:(1 1)基于能力的访问控制:基于能力的访问控制:以访问主体为判断对以访问主体为判断对象实现访问控制。访问象实现访问控制。访问主体能力列表主体能力列表中的一个元中的一个元素表示为一个二元组(素表示为一个二元组(o,ao,a),其中其中o o表示资源客体,表示资
2、源客体,a a表示一种访问控制方式。表示一种访问控制方式。(2 2)基于访问控制列表的访问控制:基于访问控制列表的访问控制:以资源客体以资源客体为判断对象实现访问控制。资源客体为判断对象实现访问控制。资源客体访问控制列访问控制列表表中的一个元素表示为一个二元组(中的一个元素表示为一个二元组(s,as,a),其中其中s s表示访问主体,表示访问主体,a a表示一种访问控制方式。表示一种访问控制方式。64.1 4.1 访问控制策略概述访问控制策略概述用户可以按自己的意愿对系统的参数做适当修改以用户可以按自己的意愿对系统的参数做适当修改以决定哪些用户可以访问他们的资源,亦即一个用户决定哪些用户可以访
3、问他们的资源,亦即一个用户可以有选择地与其它用户共享他的资源。用户有自可以有选择地与其它用户共享他的资源。用户有自主的决定权。主的决定权。用户对于不同的数据对象有不同的存取权限用户对于不同的数据对象有不同的存取权限,不同,不同的用户对同一对象也有不同的权限,而且用户还可的用户对同一对象也有不同的权限,而且用户还可将其拥有的存取权限转授给其他用户。将其拥有的存取权限转授给其他用户。7自主访问控制模型中,用户对信息的控自主访问控制模型中,用户对信息的控制基于对制基于对用户的鉴别用户的鉴别和和访问规则访问规则的确定。它的确定。它基于对主体及主体所属的主体组的识别,来基于对主体及主体所属的主体组的识别
4、,来限制对客体的访问,还要校验主体对客体的限制对客体的访问,还要校验主体对客体的访问请求是否符合存取控制规定来决定对客访问请求是否符合存取控制规定来决定对客体访问的执行与否。这里所谓的自主访问控体访问的执行与否。这里所谓的自主访问控制是指主体可以自主地将访问权,或访问权制是指主体可以自主地将访问权,或访问权的某个子集授予其它主体。的某个子集授予其它主体。8 强制访问控制是指主体与客体都有一个固定的强制访问控制是指主体与客体都有一个固定的安安全属性全属性。系统通过检查主体和客体的安全属性匹。系统通过检查主体和客体的安全属性匹配与否来决定一个主体是否可以访问某个客体资配与否来决定一个主体是否可以访
5、问某个客体资源。安全属性是强制性的规定,它是由安全管理源。安全属性是强制性的规定,它是由安全管理员,或者是操作系统根据限定的规则确定的,用员,或者是操作系统根据限定的规则确定的,用户或用户的程序不能加以修改。户或用户的程序不能加以修改。9如果系统认为具有某一个安全属性的如果系统认为具有某一个安全属性的主体不适于访问某个资源,那么任何人(包主体不适于访问某个资源,那么任何人(包括资源的拥有者)都无法使该主体具有访问括资源的拥有者)都无法使该主体具有访问该文件的权力。该文件的权力。强制安全访问控制可以避免和防止大多强制安全访问控制可以避免和防止大多数数据库有意或无意的侵害,因此在数据库数数据库有意
6、或无意的侵害,因此在数据库管理系统中有很大的应用价值。管理系统中有很大的应用价值。10基于角色访问控制(基于角色访问控制(RBACRBAC)模型是目前国际上流行的)模型是目前国际上流行的先进的安全访问控制方法。它通过分配和取消角色来先进的安全访问控制方法。它通过分配和取消角色来完成用户权限的授予和取消,并且提供角色分配规则。完成用户权限的授予和取消,并且提供角色分配规则。安全管理人员根据需要定义各种角色,并设置合适的安全管理人员根据需要定义各种角色,并设置合适的访问权限,而用户根据其责任和资历再被指派为不同访问权限,而用户根据其责任和资历再被指派为不同的角色。这样,整个访问控制过程就分成两个部
7、分,的角色。这样,整个访问控制过程就分成两个部分,即即访问权限与角色相关联访问权限与角色相关联,角色再与用户关联角色再与用户关联,从而,从而实现了用户与访问权限的逻辑分离。实现了用户与访问权限的逻辑分离。11RBAC模型中的基本概念模型中的基本概念用户(用户(UserUser):):访问系统中的资源的主体访问系统中的资源的主体权限(权限(PermissionPermission):):对计算机中某些受保护的资源的访问对计算机中某些受保护的资源的访问许可许可角色(角色(RoleRole):):应用领域内一种权力和责任的语义综合体应用领域内一种权力和责任的语义综合体v可以是一个抽象概念,也可以是对
8、应于实际系统中的特定语义体,比如组织内部的职务等v针对角色属性的不同,某些模型中将角色进一步细分为普通角色(Regular Role)和管理员角色(Administrative Role)角色与组的区别角色与组的区别v组:一组用户的集合v角色:一组用户的集合+一组操作权限的集合12用户指派(用户指派(User AssignmentUser Assignment):):用户集到角用户集到角色集的多对多的关系色集的多对多的关系权限指派(权限指派(Permission AssignmentPermission Assignment):):权限权限集到角色集的多对多的关系集到角色集的多对多的关系会话会
9、话(SessionSession):):对应于一个用户以及一组对应于一个用户以及一组激活的角色。用户每次必须通过建立会话来激激活的角色。用户每次必须通过建立会话来激活角色,得到相应的访问权限活角色,得到相应的访问权限13RBAC核心模型核心模型14通过创建角色可以一次性对一类用户指定其共同通过创建角色可以一次性对一类用户指定其共同的权限的权限象对用户一样象对用户一样,可以对角色授予或收回权限可以对角色授予或收回权限角色可被赋予给用户角色可被赋予给用户,甚至给其他角色甚至给其他角色SQL:1999 支持角色支持角色 create role tellercreate role managergra
10、nt select on branch to tellergrant update(balance)on account to tellergrant all privileges on account to managergrant teller to managergrant teller to alice,bob在银行环境中,用户角色可定义为出纳员、分行管理者、在银行环境中,用户角色可定义为出纳员、分行管理者、顾客、系统管理员和审计员,访问控制策略的一个例子如下:顾客、系统管理员和审计员,访问控制策略的一个例子如下:(1 1)允许出纳员修改顾客的帐号记录(包括存款和取)允许出纳员修改顾客
11、的帐号记录(包括存款和取款、转帐等信息),并允许查询所有帐号的注册项;款、转帐等信息),并允许查询所有帐号的注册项;(2 2)允许分行管理者修改顾客的帐号记录并允许查询)允许分行管理者修改顾客的帐号记录并允许查询所有帐号的注册项,也允许创建和终止帐号;所有帐号的注册项,也允许创建和终止帐号;(3 3)允许顾客只询问他自己的帐号的注册项;)允许顾客只询问他自己的帐号的注册项;(4 4)允许系统管理员询问系统的注册项和开关系统,)允许系统管理员询问系统的注册项和开关系统,但不允许读或修改用户的帐号信息;但不允许读或修改用户的帐号信息;(5 5)允许审计员读系统中的任何数据,但不允许修改)允许审计员
12、读系统中的任何数据,但不允许修改任何事情。任何事情。16 便于授权管理,如系统管理员需要修改系统设置等内便于授权管理,如系统管理员需要修改系统设置等内容时,必须有几个不同角色的用户到场方能操作,从容时,必须有几个不同角色的用户到场方能操作,从而保证了安全性。而保证了安全性。便于根据工作需要分级,如企业财务部门与非财力部便于根据工作需要分级,如企业财务部门与非财力部门的员工对企业财务的访问权就可由财务人员这个角门的员工对企业财务的访问权就可由财务人员这个角色来区分。色来区分。便于赋于最小特权,如即使用户被赋于高级身份时也便于赋于最小特权,如即使用户被赋于高级身份时也未必一定要使用,以便减少损失。
13、只有必要时方能拥未必一定要使用,以便减少损失。只有必要时方能拥有特权。有特权。便于任务分担,不同的角色完成不同的任务。便于任务分担,不同的角色完成不同的任务。便于文件分级管理,文件本身也可分为不同的角色,便于文件分级管理,文件本身也可分为不同的角色,如信件、账单等,由不同角色的用户拥有。如信件、账单等,由不同角色的用户拥有。174.2 4.2 自主自主访问控制访问控制自主访问控制自主访问控制基于自主策略管理主体对数据的基于自主策略管理主体对数据的访问,主要机制包括访问,主要机制包括基于主体的标识基于主体的标识和和授权规授权规则则。这些规则是自主的,即它们允许主体将数。这些规则是自主的,即它们允
14、许主体将数据权限授予其他主体。据权限授予其他主体。自主访问控制的一个重要方面是与自主访问控制的一个重要方面是与授权管理策授权管理策略略密切相关。所谓授权管理,是指授权和撤消密切相关。所谓授权管理,是指授权和撤消授权的功能。授权的功能。18访问控制矩阵模型访问控制矩阵模型利用矩阵利用矩阵A A表示系统中主体、表示系统中主体、客体和每个主体对每个客体所拥有权限之间的客体和每个主体对每个客体所拥有权限之间的关系。任何访问控制策略最终均可被模型化为关系。任何访问控制策略最终均可被模型化为访问矩阵形式:访问矩阵形式:一行表示一个主体的能力列表,一行表示一个主体的能力列表,一列表示一个客体的访问控制列表。
15、一列表示一个客体的访问控制列表。每个矩阵每个矩阵元素规定了相应的主体对应于相应的客体被准元素规定了相应的主体对应于相应的客体被准予的访问许可、实施行为。予的访问许可、实施行为。19授权状态:授权状态:用一个三元组用一个三元组Q=(S,O,A)Q=(S,O,A)来表示。来表示。vS:是主体的集合vO:是客体的集合/安全保护的对象vA中元素A(si,oj):表示主体i对客体j的操作授权访问模式:访问模式:包括读、写、执行、附加和拥有。包括读、写、执行、附加和拥有。20访问控制矩阵访问控制矩阵 A A S1,O2=“R”=“R”,表示主体,表示主体S1对客体对客体O1有读的权限。其余类推。有读的权限
16、。其余类推。O1O2O3S1S2S3S4S1ORWRRWCS2RRWCS3RWRWXCS4RRWX21在在DACDAC策略下,访问许可权和访问操作权是两策略下,访问许可权和访问操作权是两个有区别的概念。个有区别的概念。访问操作访问操作表示有权对客体进行的一些具体操作,表示有权对客体进行的一些具体操作,如读、写、执行等;如读、写、执行等;访问许可访问许可则表示可以改变访问权限的能力或把则表示可以改变访问权限的能力或把这种能力转授给其他主体的能力。这种能力转授给其他主体的能力。22S1S1的权力表(访问能力表的权力表(访问能力表CLCL)访问控制矩阵的实现机制访问控制矩阵的实现机制23 O1O1的
17、授权表的授权表(访问控制表访问控制表ACL)ACL)访问控制矩阵的实现机制访问控制矩阵的实现机制24授授 权权 表表访问控制矩阵的实现机制访问控制矩阵的实现机制主体主体访问模式访问模式客体客体S1OwnO1S1RO1S1WO1S1RO2S1RO3S1WO3S2RO1S2R O3S2WO3主体主体访问模式访问模式客体客体S3RO1S3WO1S3RO2S3WO2S3XO2S4RO2S4RO3S4WO3S4XO325访问控制矩阵原语访问控制矩阵原语是对访问控制矩阵执行的、是对访问控制矩阵执行的、不使之中断或处于不完整状态的操作。不使之中断或处于不完整状态的操作。当一个矩阵建立好之后,就意味看建立了一
18、个当一个矩阵建立好之后,就意味看建立了一个具体的安全控制机制或安全控制系统。因此对访具体的安全控制机制或安全控制系统。因此对访问控制矩阵的操作就意味着改变该系统的安全策问控制矩阵的操作就意味着改变该系统的安全策略或授权情况。略或授权情况。在访问控制矩阵中,有六种命令操作能改变矩在访问控制矩阵中,有六种命令操作能改变矩阵的状态,每种命令由一个阵的状态,每种命令由一个可选的条件语句可选的条件语句和一和一个个命令体命令体构成。构成。26访问控制操作集合访问控制操作集合原语原语操作操作含义含义条件条件1 授予权限授予权限Enter rinto Asi,oj赋予主体赋予主体si对客对客体体oj的访问模式
19、的访问模式rSi Soj o2 撤销权限撤销权限Delete rfrom Asi,oj将主体将主体si对客体对客体oj的访问模式的访问模式r撤销撤销Si Soj o A si,oj=Asi,oj r A sh,ok=Ash,ok(hi,kj)A si,oj=Asi,oj-r A sh,ok=Ash,ok(hi,kj)27访问控制操作集合访问控制操作集合原语原语操作操作含义含义条件条件3添加主体添加主体CreatSubject Si 添加新主体添加新主体siSi S4删除主体删除主体Destroy subject Si删除主体删除主体siSi S3 结果状态结果状态:S=S si ,O=O si
20、 As,o=As,o(s S,o O)Asi,o=(o O)As,si=(s S)4 结果状态结果状态:S=S-si ,O=O-si As,o=As,o(s S,o O)O O28访问控制操作集合访问控制操作集合原语原语操作操作含义含义条件条件5 添加客体添加客体CreatObject Oj 添加新客体添加新客体OjOj 6 删除客体删除客体Destroy Object Oj 删除客体删除客体OjOj 5 结果状态结果状态:S=S,O=O oj As,o=As,o(s S,o O)As,oj=(o O)6 结果状态结果状态:S=S,O=O-oj As,o=As,o(s S,o O)O29约束条
21、件约束条件 每种命令的可选的条件语句中,可以包含对该命令执每种命令的可选的条件语句中,可以包含对该命令执行时的时间或数据约束。行时的时间或数据约束。v数据约束:可规定所访问的数据的值的限制。例:只准读月工资小于3500.0元的职员的信息资料。v时间约束:规定允许读写发生的时间条件。如:银行规定职员在早8:00至下午5:00.下班后不许访问数据库。v上下文约束:例如只读取姓名字段或工资字段是允许的,但把它们组合起来读取就需要限制。v历史记录约束:依赖于主体先前执行的存取操作,如限定只有当主体在未曾读取过员工姓名的条件下,才具有读员工工资的权利。30 自主访问控制特点:自主访问控制特点:v根据主体
22、的身份及允许访问的权限进行决策。v自主是指具有某种访问能力的主体能够自主地将访问权的某个子集授予其它主体。v灵活性高,被大量采用。自主访问控制缺点:自主访问控制缺点:v信息在移动过程中其访问权限关系会被改变,权限控制某些情况下不够严格。如用户A可将其对目标O的访问权限传递给用户B,从而使不具备对O访问权限的B可访问O。314.3 4.3 强制强制访问控制访问控制为系统中每个主体和客体标出不同为系统中每个主体和客体标出不同安全等级安全等级,这,这些安全等级由系统控制,不能随意更改。些安全等级由系统控制,不能随意更改。根据主体根据主体和客体的级别标记来决定访问模式。和客体的级别标记来决定访问模式。
23、若系统认为某一等级安全属性的主体不能访问一若系统认为某一等级安全属性的主体不能访问一定安全等级属性的客体,那么任何人都无法使该主定安全等级属性的客体,那么任何人都无法使该主体访问到客体。代表用户的应用程序不能改变自身体访问到客体。代表用户的应用程序不能改变自身或任意客体的安全属性。或任意客体的安全属性。强制访问控制可以防止一个进程生成共享文件,强制访问控制可以防止一个进程生成共享文件,从而防止一个进程通过共享文件把信息从一个进程从而防止一个进程通过共享文件把信息从一个进程传送给另一个进程。传送给另一个进程。在军队中经常应用,支持多级安全在军队中经常应用,支持多级安全32主体对客体的访问主要有四
24、种方式:主体对客体的访问主要有四种方式:(1 1)向下读()向下读(rdrd,read downread down):):主体安全级别高于主体安全级别高于客体信息资源的安全级别时允许的读操作;客体信息资源的安全级别时允许的读操作;(2 2)向上读()向上读(ruru,read upread up):):主体安全级别低于客主体安全级别低于客体信息资源的安全级别时允许的读操作;体信息资源的安全级别时允许的读操作;(3 3)向下写()向下写(wdwd,write downwrite down):):主体安全级别高主体安全级别高于客体信息资源的安全级别时允许执行的动作或是写操作;于客体信息资源的安全级
25、别时允许执行的动作或是写操作;(4 4)向上写()向上写(wuwu,write upwrite up):):主体安全级别低于主体安全级别低于客体信息资源的安全级别时允许执行的动作或是写操作。客体信息资源的安全级别时允许执行的动作或是写操作。其访问控制关系可分为:下读其访问控制关系可分为:下读/上写和上读上写和上读/下写,分下写,分别进行机密性控制和完整性控制别进行机密性控制和完整性控制通过安全标签实现单向信息流通模式。通过安全标签实现单向信息流通模式。33安全模型:安全模型:是一种抽象且独立于软件实现的是一种抽象且独立于软件实现的概念模型,数据库系统的安全模型是用于精确概念模型,数据库系统的安
展开阅读全文