访问控制技术研究--学士论文.doc_第1页
访问控制技术研究--学士论文.doc_第2页
访问控制技术研究--学士论文.doc_第3页
访问控制技术研究--学士论文.doc_第4页
访问控制技术研究--学士论文.doc_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

毕 业 论 文(设计)论文题目 访问控制技术研究 姓 名 学 号 院 系 专 业 指导教师 职 称 中国合肥二o一o 年 六 月毕 业 论 文(设 计)任 务 书论文(设计)题目 访问控制技术研究 院 系 名 称 专 业 (班 级) 学 生 姓 名 学 号 指 导 教 师 下发任务书日期 2011 年 1 月10日一、毕业论文(设计)的主要内容随着网络应用的逐步深入,安全问题日益受到关注。一个安全的网络需要可靠的访问控制服务作保证。访问控制是在保障授权用户能获取所需资源的同时拒绝非授权用户的安全机制,是网络安全防范和保护的主要策略,它的主要任务是保证网络资源不被非法使用和访问,它是保证网络安全最重要的核心策略之一。因此对访问控制的基本概念、访问控制技术涉及的各项基本技术以及主要的访问控制类型进行了研究,如自主访问控制技术(dac)、强制访问控制技术(mac)和基于角色的访问控制技术(rbac),并对每种访问控制技术进行了概念、实现方式以及其优缺点的总结。其中对自主访问控制技术(dac)中的访问控制表和基于角色的访问控制技术(rbac)的各个基本模型进行了重点的讨论分。二、毕业论文(设计)的基本要求根据毕业论文(设计)的主要内容对各个研究的部分进行相关的了解和研究:1、访问控制技术的概念:所谓访问控制,就是在鉴别用户的合法身份后,通过某种途径显式地准许或限制用户对数据信息的访问能力及范围, 从而控制对关键资源的访问,防止非法用户的侵入或者合法用户的不慎操作造成破坏。2、访问控制的技术: 访问控制是保证网络安全最重要的核心策略之一,它涉及的技术也比较广,它包括入网访问控制、网络权限控制、目录级控制以及属性控制等多种手段。对访问控制的各个技术进行了相关的叙述。3、根据访问控制机制,访问控制技术主要有三种:基于授权规则的、自主管理的自主访问控制技术(dac),基于安全级的集中管理的强制访问控制技术(mac)和基于授权规则的集中管理的基于角色的访问控制技术(rbac)。重点对各个访问控制技术的概念、实现方式、典型案例以及其优缺点进行了研究,其中对rbac进行重点研究。三、应收集的资料及主要参考文献1百度百科:访问控制技术2百度百科:访问控制列表3思科经典技术分享:访问控制列表(acl)技术详解4赵亮, 茅兵, 谢立. 访问控制研究综述j. 计算机工程,2004, 30( 2) . 5肖川豫(重庆大学).访问控制中权限的研究与应用d. 20066jerome h saltzer,michael d schroeder .the protection of information in computer systems m. 1975(09)7刘伟(四川大学).基于角色的访问控制研究及其应用d. 20048 (电子政务工程服务网)9刘伟(石河子大学).访问控制技术研究j.农业网络信息2007年第七期 10李成锴,詹永照,茅兵.谢立.基于角色的cscw系统访问控制模型j. 软件学报 2000(7)11许春根,江于,严悍.基于角色访问控制的动态建模j. 计算机工程 2002(1)12张勇,张德运,蒋旭宪.基于认证的网络权限管理技术j. 计算机工程与设计 2001(2)13中国信息安全产品测评认证中心,信息安全理论与技术m . 人民邮电出版社,2003914 david fferraiolo、drichard kuhn、ramaswamy chandramouli,rolebased access controlm. artech house,2003415american national standards institute s. inc american national standard for information technology-role based access control.2003/4/416汪厚祥, 李卉等.基于角色的访问控制研究j.计算机应用研究, 2004, (4) .四、毕业论文(设计)进度计划起讫日期工 作 内 容备 注201011中旬2011.2.下旬2011.3上旬2011.32011.52011.52011.6中旬毕业论文(设计)统一选题确定毕业论文(设计)的题目提交毕业论文(设计)开题报告和任务书根据要求做好毕业论文(设计),完成毕业设计的初步定稿论文的修改、完善、定稿中间查阅资料,根据实际的工作或生活状况确定题目根据题目以及所查阅的资料,确定毕业论文(设计)的内容学士学位论文(设计)开题报告课题名称访问控制技术研究课题来源学校提供,自主选择学生姓名 专业 学号 指导教师姓名 职称 研究内容访问控制的基本概念、访问控制技术涉及的各项基本技术以及主要的访问控制类型,如自主访问控制技术(dac)、强制访问控制技术(mac)和基于角色的访问控制技术(rbac),并对每种访问控制技术进行了概念、实现方式以及其优缺点的总结。其中对自主访问控制技术(dac)中的访问控制表和基于角色的访问控制技术(rbac)的各个基本模型进行了重点的讨论分析。研究计划2010 11月中 毕业论文统一选题2011 2月底 确定毕业设计(论文)题目3月初旬 提交毕业论文(设计)开题报告和任务书3月中3月底 调研、查资料。4月初4月中 确定论文大纲,分类查阅相关资料4月底5月下 论文的初步撰写,并进行相关的资料查阅与修改5月底6月初 撰写毕业论文,并与指导老师进行讨论以修改,对论文定稿,进行论文答辩的ppt制作6月中 准备论文答辩特色与创新1. 该技术当前网络发展与网络安全重要性提高的必然重视性产物2. 该技术的发展快,潜力大,应用广3. 该技术具有较强的研究价值与实际应用价值。指导教师意见教研室意见学院意见目 录1 引言12 访问控制的概念与策略13 访问控制的技术23.1 入网访问控制23.2 网络权限控制33.3 目录级安全控制33.4 属性安全控制43.5 服务器安全控制44 访问控制类型44.1 自主访问控制(dac)54.1.1 自主访问控制(dac)的实现机制54.1.2 自主访问控制(dac)的访问控制表54.1.3 自主访问控制(dac)优缺点74.2 强制访问控制(mac) 84.2.1 强制访问控制(mac)概念84.2.2 强制访问控制(mac)优缺点84.3 基于角色的访问控制技术(rbac)94.3.1 基本模型rbac0 rbac0的基本构成与实现机制 rbaco的形式定义114.3.2 角色分级模型rbacl rbacl的基本构成与实现机制 rbacl的形式定义124.3.3 角色约束模型rbac2 rbac2的基本构成 rbac2的形式定义 rbac2的实现机制134.3.4 基于角色的访问控制技术(rbac)优缺点145 典型案例一个基于角色的访问控制系统155.1 系统的开发背景与开发目标155.2 系统业务功能简介165.3 系统分析165.3.1 组织结构165.3.2 用户和角色175.3.3 角色等级和权限的定义175.3.4 角色约束185.4 系统设计186 结束语19参考文献19英文摘要20致谢20附录21访问控制技术研究摘要:访问控制是信息安全的重要组成部分,也是当前注重信息安全的人们关注的重点。本文对访问控制的基本概念、访问控制技术涉及的各项基本技术以及主要的访问控制类型进行了研究,如自主访问控制技术(dac)、强制访问控制技术(mac)和基于角色的访问控制技术(rbac),并对每种访问控制技术进行了概念、实现方式以及其优缺点的总结。其中对自主访问控制技术(dac)中的访问控制表和基于角色的访问控制技术(rbac)的各个基本模型进行了重点的讨论分析。关键字:自主访问控制技术,访问控制表,强制访问控制技术,基于角色的访问控制技术1 引言随着全球网络化和信息化的发展,计算机网络已经深入到社会生活的各个方面,许多敏感的信息和技术都是通过计算机进行传输、控制和管理,尤其是近年来网络上各种新业务的兴起,如网络银行、电子政务和电子商务的快速发展,网络的重要性及其对社会的影响也越来越大。随之而来的问题是网络环境同益复杂, 安全问题也变得日益突出,仅仅依靠传统的加密技术已不能满足网络安全的需要。国际标准化组织(iso)在网络安全标准(is074982)中定义了5个层次型安全服务:身份认证服务、访问控制服务、数据保密服务、数据完整性服务和不可否认服务,而访问控制便是其中的一个重要组成部分。2 访问控制的概念与策略所谓访问控制,就是在鉴别用户的合法身份后,通过某种途径显式地准许或限制用户对数据信息的访问能力及范围,从而控制对关键资源的访问,防止非法用户的侵入或者合法用户的不慎操作造成破坏。访问控制技术的实现是基于访问控制中权限的实现也就是访问控制的策略。访问控制策略定义了在系统运行期间的授权和非授权行为,即哪些行为是允许发生的,那些是不允许发生的。一般分为授权策略(authorization policies)和义务策略(obligation policies)。授权策略是指对于客体,那些操作是允许的,而那些操作是被禁止的;义务策略是指主体必须执行或不必执行的操作,是主体的义务。访问控制的基本概念有: 1)主体(subjeet) 主体是指主动的实体,是访问的发起者,它造成了信息的流动和系统状态的改变,主体通常包括人、进程和设备。2)客体(object) 客体是指包含或接受信息的被动实体,客体在信息流动中的地位是被动的,是处于主体的作用之下,对客体的访问意味着对其中所包含信息的访问。客体通常包括文件、设备、信号量和网络节点等。3)访问(access) 访问(access)是使信息在主体(subject)和客体(object)之间流动的一种交互方式。4)权限(access permissions)访问权限控制决定了谁能够访问系统,能访问系统的何种资源以及如何使用这些资源。适当的访问控制能够阻止未经允许的用户有意或无意地获取数据。访问控制的手段包括用户识别代码、口令、登录控制、资源授权(例如用户配置文件、资源配置文件和控制列表)、授权核查、日志和审计等等1-2。访问控制是保证网络安全最重要的核心策略之一,它涉及的技术也比较广,它包括入网访问控制、网络权限控制、目录级控制以及属性控制等多种手段。3 访问控制的技术3.1 入网访问控制入网访问控制为网络访问提供了第一层访问控制。它控制哪些用户能够登录到服务器并获取网络资源,控制准许用户入网的时间和准许他们在哪台工作站入网。 用户的入网访问控制可分为三个步骤:用户名的识别与验证、用户口令的识别与验证、用户账号的缺省限制检查。三道关卡中只要任何一关未过,该用户便不能进入该网络。对网络用户的用户名和口令进行验证是防止非法访问的第一道防线。为保证口令的安全性,用户口令不能显示在显示屏上,口令长度应不少于6个字符,口令字符最好是数字、字母和其他字符的混合,用户口令必须经过加密。用户还可采用一次性用户口令,也可用便携式验证器(如智能卡)来验证用户的身份。 网络管理员可以控制和限制普通用户的账号使用、访问网络的时间和方式。用户账号应只有系统管理员才能建立。用户口令应是每用户访问网络所必须提交的“证件”、用户可以修改自己的口令,但系统管理员应该可以控制口令的以下几个方面的限制:最小口令长度、强制修改口令的时间间隔、口令的唯一性、口令过期失效后允许入网的宽限次数。 用户名和口令验证有效之后,再进一步履行用户账号的缺省限制检查。网络应能控制用户登录入网的站点、限制用户入网的时间、限制用户入网的工作站数量。当用户对交费网络的访问“资费”用尽时,网络还应能对用户的账号加以限制,用户此时应无法进入网络访问网络资源。网络应对所有用户的访问进行审计。如果多次输入口令不正确,则认为是非法用户的入侵,应给出报警信息。 3.2 网络权限控制 网络的权限控制是针对网络非法操作所提出的一种安全保护措施。用户和用户组被赋予一定的权限。网络控制用户和用户组可以访问哪些目录、子目录、文件和其他资源。可以指定用户对这些文件、目录、设备能够执行哪些操作。受托者指派和继承权限屏蔽(irm)可作为两种实现方式。受托者指派控制用户和用户组如何使用网络服务器的目录、文件和设备。继承权限屏蔽相当于一个过滤器,可以限制子目录从父目录那里继承哪些权限。我们可以根据访问权限将用户分为以下几类:特殊用户(即系统管理员);一般用户,系统管理员根据他们的实际需要为他们分配操作权限;审计用户,负责网络的安全控制与资源使用情况的审计。用户对网络资源的访问权限可以用访问控制表来描述。 3.3 目录级安全控制 网络应允许控制用户对目录、文件、设备的访问。用户在目录一级指定的权限对所有文件和子目录有效,用户还可进一步指定对目录下的子目录和文件的权限。对目录和文件的访问权限一般有八种:系统管理员权限、读权限、写权限、创建权限、删除权限、修改权限、文件查找权限、访问控制权限。用户对文件或目标的有效权限取决于以下两个因素:用户的受托者指派、用户所在组的受托者指派、继承权限屏蔽取消的用户权限。一个网络管理员应当为用户指定适当的访问权限,这些访问权限控制着用户对服务器的访问。八种访问权限的有效组合可以让用户有效地完成工作,同时又能有效地控制用户对服务器资源的访问 ,从而加强了网络和服务器的安全性。 3.4 属性安全控制 当用文件、目录和网络设备时,网络系统管理员应给文件、目录等指定访问属性。属性安全在权限安全的基础上提供更进一步的安全性。网络上的资源都应预先标出一组安全属性。用户对网络资源的访问权限对应一张访问控制表,用以表明用户对网络资源的访问能力。属性设置可以覆盖已经指定的任何受托者指派和有效权限。属性往往能控制以下几个方面的权限:向某个文件写数据、拷贝一个文件、删除目录或文件、查看目录和文件、执行文件、隐含文件、共享、系统属性等。 3.5 服务器安全控制 网络允许在服务器控制台上执行一系列操作。用户使用控制台可以装载和卸载模块,可以安装和删除软件等操作。网络服务器的安全控制包括可以设置口令锁定服务器控制台,以防止非法用户修改、删除重要信息或破坏数据;可以设定服务器登录时间限制、非法访问者检测和关闭的时间间隔。4 访问控制类型访问控制机制可以限制对系统关键资源的访问,防止非法用户进入系统及合法用户对系统资源的非法使用。目前,访问控制技术主要有三种:基于授权规则的、自主管理的自主访问控制技术(dac),基于安全级的集中管理的强制访问控制技术(mac)和基于授权规则的集中管理的基于角色的访问控制技术(rbac)。其中rbac由于能进行方便、安全、高效的授权管理,并且拥有策略中性化、最小特权原则支持、以及高校的访问控制管理等诸多优良的特性,是现在研究的热点1。4.1 自主访问控制(dac) 自主性访问控制是在确认主体身份及其所属的组的基础上对访问进行控制的一种控制策略。它的基本思想是:允许某个主体显示的指定其他主体对该主体所拥有的信息资源是否可以访问以及执行。4.1.1 自主访问控制(dac)的实现机制自主访问控制有两种实现机制:一是基于主体dac实现,它通过权限表表明主体对所有客体的权限,当删除一个客体时,需遍历主体所有的权限表;另一种是基于客体的dac实现,它通过访问控制链表acl(access control list)来表明客体对所有主体的权限,当删除一个主体时,要检查所有客体的acl。为了提高效率,系统一般不保存整个访问控制矩阵,是通过基于矩阵的行或列来实现访问控制策略。基于行(主体)的矩阵是表明主体队所有客体的权限,基于行的矩阵的优点是能够快速的找出该主体对应的权限集。目前以基于列(客体) 的访问控制表acl实际应用较多,但是主要应用于操作系统。acl的优点是表述直观、易于理解,比较容易查出对一定资源有访问权限的所有用户,能够有效的实施授权管理。但在应用到规模较大、关系复杂的企业时,管理员为了实现某个访问策略需要在acl中设定大量的表项;而且当某个用户的职位发生变化时,管理员需要修改该用户对所有资源的访问权限,使得访问控制的授权管理需要花费大量的人力,且容易出错。4.1.2 自主访问控制(dac)的访问控制表 访问控制表(access control list,acl)是基于访问控制矩阵中列的自主访问控制。它在一个客体上附加一个主体明晰表,来表示各个主体对这个客体的访问权限。明细表中的每一项都包括主体的身份和主体对这个客体的访问权限。如果使用组(group)或者通配符(wildcard)的概念,可以有效地缩短表的长度。acl实际上是一种把能够访问客体的主体列表与该客体结合在一起的形式,并以这种形式把访问控制矩阵竖列的控制信息表达出来的一种实现方式3。acl的结构如下图4-1所示:图4-1 acl结构(acl structure)访问控制表是实现自主访问控制比较好的方式,下面通过例子进行详细说明。对系统中一个需要保护的客体oj附加的访问控制表的结构所示。图4-2 访问控制表举例在上图4-2的例子中,对于客体oj,主体s0具有读(r)和执行(e)的权利;主体s1只有读的权利;主体s2只有执行的权利;主体sm具有读、写(w)和执行的权利。但是,在一个很大的系统中,可能会有非常多的主体和客体,这就导致访问控制表非常长,占用很多的存储空间,而且访问时效率下降。解决这一问题就需要分组和使用通配符。在实际的多用户系统中,用户可以根据部门结构或者工作性质被分为有限的几类。一般来说,一类用户使用的资源基本上是相同的。因此,可以把一类用户作为一个组,分配一个组名,简称“gn”,访问是可以按照组名判断。通配符“*”可以代替任何组名或者主体标识符。这时,访问控制表中的主体标识为:主体标识=id.gn 其中,id是主体标识符,gn是主体所在组的组名。请看图4-3的示例。图4-3 带有组和通配符的访问控制表示例在上图4-3的访问控制表中,属于info组的所有主体都对客体oj具有读和执行的权利;但是只有info组中的主体1iu才额外具有写的权限;无论是哪一组中的zhang都可以读客体oj;最后一个表项说明所有其他的主体,无论属于哪个组,都不具备对oj有任何访问权限。在访问控制表中还需要考虑的一个问题是缺省问题。缺省功能的设置可以方便用户的使用,同时也避免了许多文件泄露的可能。最基本的,当一个主体生成一个客体时,该客体的访问控制表中对应生成者的表项应该设置成缺省值,比如具有读、写和执行权限。另外,当某一个新的主体第一次进入系统时,应该说明它在访问控制表中的缺省值,比如只有读的权限。4.1.3 自主访问控制(dac)优缺点dac的优点: 1)访问控制的粒度足单个用户,能够在一定程度上实现权限隔离和资源保护。2)能够不加控制地使信息从一个可以被写的客体流向一个可以被读的客体。3)用户可以随意地将自己拥有的访问权限授予其他用户,之后也可以随意地将所授予的权限撤销。4)由于自主访问控制将用户权限与用户直接对应,因此自主访问控制具有较高的访问效率。dac的缺点:1)信息在移动过程中其访问权限的关系可能会发生改变,这使得管理员难以确定哪些用户对哪些资源具有访问权限,不利于实现统一的全局访问控制,使其在资源共享方而难以控制。2)dac中资源管理比较分散,用户间的关系不能在系统中体现出来,且不易管理,信息容易泄露,无法抵御特洛伊木马的攻击。一旦带有特洛伊木马的应用程序被激活,它可以任意泄漏和破坏接触到的信息,甚至改变这些信息的访问授权模式。3)授权管理繁琐,需要对每个资源指定可以访问的用户以及相应的权限,当用户的情况发生变化时需要进行大量的修改操作,并且每个子系统都要维护自己的访问控制列表,使得整个系统的统一管理非常困难,容易产生安全漏洞2。4.2 强制访问控制(mac) 4.2.1 强制访问控制(mac)概念强制访问控制(mac,mandatoryaccess control)是由美国政府和军方联合研究出的一种控制技术,目的是为了实现比dac更为严格的访问控制策略。它是基于主体-客体的安全级别,要求主体客体关系具有良好的层次结构,只允许信息从低安全级别的实体流向高安全级别的实体,一般用于多级安全军事系统。每个主体和客体都有自己既定的安全属性,主体对客体是否具有访问权限取决于二者安全属性之间的关系。mac 将主体和客体分级,预先定义用户的可信任级别及信息的敏感程度(安全级别),如可以分为绝密级、机密级、秘密级、无密级等。系统根据主体和客体的级别标记来决定访问模式。当用户提出访问请求时,系统对两者进行比较以确定访问是否合法,是一种系统强制主体服从事先制定的访问控制策略。mac可以通过使用敏感标记对所有用户和资源强制执行安全策略4。如下图4-45:图4-4 强制访问控制访问模式主体(用户、进程):被分配一个安全等级;客体(文件、数据):也被分配一个安全等级;访问控制执行时对主体和客体的安全级别进行比较。4.2.2 强制访问控制(mac)优缺点mac的优点是:1)它是管理集中,根据事先定义好的安全级别实现严格的权限管理,因此适合对于安全性要求较高的应用环境,如美国军方就一直使用这种访问控制模型6。2)通过信息的单向流动来防止信息扩散,能够抵御特洛伊木马对系统保密性的攻击。mac的缺点是: 1)根据用户的可信任级别及信息的敏感程度来确定它们的安全级别,在控制粒度上不能满足最小权限原则。2)应用领域比较窄,使用不灵活。一般只用于军事等具有明显等级观念的行业或领域7-9。3)主体访问级别和客体安全级别的划分与现实要求无法一致,在同级别间缺乏控制机制,管理不便。因为只有子系统的管理员才能制定出合适该子系统的访问控制模式,而整个系统的管理员不可能指定出适合各个子系统的统一的访问控制模式。4)完整性方面控制不够。重点强调信息从低安全级向高安全级的方向流动, 对高安全级信息的完整性保护强调不够。4.3 基于角色的访问控制技术(rbac)在传统的访问控制中,主体始终是和特定的实体捆绑对应的。例如,用户以固定的用户名注册,系统分配一定的权限,该用户将始终以该用户名访问系统,直至销户。其间,用户的权限可以变更,但必须在系统管理员的授权下才能进行。然而在现实社会中,这种访问控制方式表现出很多弱点,不能满足实际需求。基于角色的访问控制模式(role based access control,rbac)就是为了克服传统访问控制中的问题而提出来的。迄今为止,已经讨论和发展了4种基于角色的访问控制(role-base)模型,下图4-5所示是它们之间的相互关系:图4-5 rbac家族系列关系示意图其中rbac0为基本模型,rbac1为角色分级模型,rbac2为角色限制模型,rbac3为统一模型10。4.3.1 基本模型rbac0 rbac0的基本构成与实现机制下图4-611给出了rbac0的基本构成:图4-6 rbaco的基本构成rbaco由4个基本要素构成,即用户(u)、角色(r)、会话(s)和授权(p),一个数据库系统中,定义并存在着多个用户,定义并存在着多个角色,同时对每个角色设置了多个权限关系,称之为权限的赋予(pa)。授权机制从某个角度看可以视为在系统内通过特定的操(action)将主体与动作客体(数据或其他资源)联结起来,语义可以是允许读、允许修改和允许创建等,在不同系统中,客体的种类可能非常不同,例如,在操作系统中考虑的客体一般是诸如文件、目录、端口和设备筹,操作则为读取、写入、打开、关闭和运行等,在数据库系统中则是考虑诸如关系、表、视图、记录、字段和值等。也可以针对具体应用的需求将一个完整的子网络视为一个授权操作处理的对象一角色,操作则为选取、修改、删除和插入等。rolebase模型中授权就是将这些客体的存取访问的权限在可靠的控制下连带角色所需要的操作一起提供给那些角色所代表的用户,通过授权的管理机制,可以给予一个角色以多个权限,而一个权限也可以赋予多个角色,同时一个用户可以扮演多个角色,一个角色又可以接纳多个用户。不难看出,相比于用户互相授权之间的直接关联的做法,通过rolebase模型数据库系统能够以较为简单的方式向最终用户提供语义更加丰富的、得到完整的控制的存取功能10。 rbaco的形式定义rbaco模型的组成包括下列几个部分:1)u、r、p以及s(用户、角色、授权和会话);2)pap*r,pa是授权到角色的多对多的关系:3)uau*r,ua是用户到角色的多对多的关系:4)roles (si) r|(user(si),r)ua其中,user:su,将各个会话映射到一个用户去的函数user(si)。roles:s2r,将各个会话si与一个角色集合连接起来的映射,可以随时间变化而变化,且会话si的授权srroles(si)p |(p,r)pa在role-base中每个角色至少具备一个授权,而每个用户至少扮演一个角色,虽然在形式定义上并不要求这一点12。4.3.2 角色分级模型rbacl rbacl的基本构成与实现机制下图4-711给出了rbac1的基本构成:图4-7 rbacl的基本构成在一般的单位或组织中,特权或职权通常是有继承关系的,上级领导(角色)所得到的信息访问权限高于下级职员的权限,因此在rolebase中引进一定的层次结构用以反映这个实际情况是自然的,在多级安全控制系统内,存取类的保密级别是线性排列的。其中安全策略的一个要求就是:要想合法地获得信息,提出存取请求的人员的存取类的级别就要大于信息的存取类级别,rbaci中支持的层次关系可以容易地实现多级安全系统所要求的保密级别的线性排列的要求。多级安全系统的另一个要求就是要能够支持范畴的安排,其中的范畴是互相独立的和无序的。为了获得信息的存取权,提出存取请求的人员必须属于一定的存取类,存取类的范畴的集合应该包括信息存取类的全部范畴。角色的层次结构rbacl,rh中的角色可以容易地实现所要求的保密存取类的范畴的要求。用数学的语言来说,就是要求所使用的安全模型必须是偏序的。rbac,对层次角色的支持包括了偏序模型的支持10。 rbacl的形式定义rbac1模型的组成包括下列几个部分:1)u、r、p以及s(用户、角色、授权和会话);2)pap*r,pa是授权到角色的多对多的关系:3)uau*r,ua是用户到角色的多对多的关系:4)rhr*r,rh是角色上的一个偏序关系,称之为角色层次关系成支配关系,一般记作“”;5)roles (si) r|(rr)(user(si),r)ua。其中:user:su,将各个会话映射到一个用户去的函数user(si)。roles:s2r,将各个会话si与一个角色集合连接起来的映射,可以随时间变化而变化,且会话si的授权srroles(si)p|(p,r)pa12。4.3.3 角色约束模型rbac rbac2的基本构成下图4-811给出了rbac2的基本构成:图4-8 rbac2的基本构成 rbac2的形式定义rbac2,包含了rbaco所有的基本特性,除此之外增加了对rbaco的所有组成元素的核蠢过程,只有拥有有效值的元素才可被接受。在rbac2中约束条件指向ua、pa和会话中的user、role等函数。一般说来,最好是根据其实际的类型和属性加以陈述。这样就要考虑语言等环境,所以较难给约束模型一个严格的形式定义。在实际的安全数据库管理系统中,约束条件和实现的方式各有不同,多数专家倾向于采取尽可能简单而又高效的约束条件,作为实际rolebase系统的约束机制。 rbac2的实现机制rbaco的另一个增强方向是rbac2,即所谓的约束模型。rbacl和rbac2之间是互不相关的,因此也就是不可比较的。作为一个完整的安全模型,约束增强是非常重要的性能。在绝大多数组织中,除了角色的层次关系外,经常要考虑的问题是类似于这样的情况:一个公司的采购员和出纳员虽然都不算是高层次的角色,但是任何一个公司都绝不会允许同时给某一个具体人员分配这两个角色。因为,这种工作安排必然导致欺诈行为的发生。不论一个具体的系统中是否具备层次角色的机制,约束机制都是很重要的。特别是对于高级决策层,约束机制的作用更是重要。当整体上确定了对某一个角色的分配的约束条件后,公司的领导层就可以不必再操心具体的实施了。当role-base的管理集中在一个系统管理员时,约束机制至少可以使得管理工作轻松一些。对于一个特别大的系统,这是很重要的,因为高级系统管理人员就可以通过规定约束条件来指导和控制下级的系统管理人员的操作不致有失误和越轨之处。实际上,通过约束机制,rolebaseac就可以实现强制安全控制,而且包括了对rolebase本身的管理和控制10。4.3.4 基于角色的访问控制技术(rbac)优缺点rbac的优点:1)通过角色概念的引入,实现了用户与访问权限的逻辑分离,即先给角色分配权限,再给用户分配相应的角色,从而该用户具有了与该角色相关联的权限;2)实现了根据用户在系统中所处的位置及作用设置相应的访问权限;3)rbac以对角色的控制取代了dac和mac中直接对用户的控制,增加了系统的灵活性;4)最小特权原则的实施,保证了用户只具有完成特定任务所必须的权限,防止了用户具备过大的对系统资源进行访问的权限;5)方便管理员对权限的管理。在定义好了权限和角色后,只需进行简单的角色分配或取消,即可完成用户权限的分配与取消。rbac的缺点:1)在rbac中进行了职责分离,使得原来对身份标识的窃取恶化为对角色的窃取;2)任何一个对象或主体会因此损害到整个对象组或用户组;3)角色的继承不加限制的权限授予会导致违背安全性策略;4)角色重叠的模糊本质、为用户指定多种角色以及将对象指定到多个对象访问组,会使错误配置成为一种实际的风险;5)最后rbac的角色层次图中的许多都只有理论模型和算法描述,实现困难,并且许多理论框架依然不清楚,没有完整的代数描述。对于模型中的限制的研究#将角色的互斥进行分类,定义了理论上的安全级别,不过实际中几乎无法使用,仅有理论意义。 再有,许多模型的代数描述非常复杂,很抽象,很难理解,需要很好的数学基础,不易推广13。5 典型案例一个基于角色的访问控制系统5.1 系统的开发背景与开发目标以下为某公司开发的一套在局域网络环境下运行、b/s模式web版的业务系统管理软件,软件功能强大,包含9个大模块,9大模块下又包括100多个子模块。由于数据涉密范围不同,因此对用户的操作权限有非常严格的限制。目前,在软件的访问控制实现上,采用传统访问控制策略,对系统中的所有用户进行一维的权限管理,这样,一个用户往往要针对9大模块,以及9个模块下的若干个子模块进行授权管理。在实现起来,操作很烦琐,既不能有效适应安全性需求,也不能快速实现。如下图5-1:图5-1 授权系统界面而单位各科室人员的调动又很频繁,这样就造成系统管理员的负担很重,且多是重复劳动。为了解决这一问题,使管理人员从权限管理重复劳动的负担中解放出来,根据他们在其本行业多年积累下来的经验,参考了其它同行的成功经验整合了先进的思想,认为基于角色的访问控制能有效解决他们工作中遇到的问题。因此需要开发出一套功能完善而且又灵活方便的安全管理系统,以此提高业务软件的安全性。5.2 系统业务功能简介由于该处开发的业务管理系统涉密较深,不能详细介绍它的功能、模块。因此就对软件进行了脱密处理,就业务系统的基本架构与功能菜单做一个简单地、类似的介绍,但能反映出其设计思想。下图5-2为业务软件功能菜单示例:图5-2 业务软件功能菜单由上图5-2可以看到,本业务管理系统包含4大模块,数据查询、数据维护、文秘管理和人事管理,而4大模块又包含若干子模块。其对数据按涉密范围不同,分为a类数据和b类数据,被授予不同访问权限的操作人员只能访问他被授权的数据。例如:系统管理员只能为用户分配权限,不能读取、修改任何涉密数据;a类和b类数据的维护工作(增、删、改)只能由专门的维护人员操作;从事于人事管理、行政管理的人员也不能访问涉密数据:同样的,具有访问a类数据的用户不能访问b类数据,具有访问b类数据的用户也不能访问a类数据。5.3 系统分析5.3.1 组织结构下图5-3为其组织结构关系图,它清晰地显示了各部门之间的领导关系,以及每个部门内部的人员职责分工等情况。图5-3 组织结构关系图5.3.2 用户和角色其实在现实生活中也经常提到某人扮演了什么角色,处长还是副处长。不过在rbac中的角色与实际的角色概念有所不同。在一个rbac模型中,一个用户可以被赋予多个角色,一个角色也可以对应多个用户,它们之间是多对多的关系,这些角色是根据系统的具体实现来定义的;同样的一个角色可以拥有多个权限,一个权限也可以被多个角色所拥有。在他们这套系统里,用户是指自然人,角色就是组织内部一件工作的功能或者工作的头衔,表示该角色成员所授予的职权和责任。他们根据组织机构、业务岗位不同,定义了以下几种角色:处长、数据查询科科长,a类数据查询科员,b类数据查询科员。数据维护科科长,数据增、改科员,数据删除科员。办公室主任,办公室科员,人事管理科科长,人事管理科数据维护科员,人事管理科普通科员,系统管理员。5.3.3 角色等级和权限的定义rbac模型中引入了角色等级来反映一个组织的职权和责任分布的偏序关系,以上应用系统为例,上图显示了该应用系统中角色的简化等级。其中高等级角色在上方,低等级角色在下方。等级最低的角色是科员,科长、主任高于科员,处长高于科长,所以科长继承了科员,处长继承了科长,显然角色等级关系具有反身性、传递性和非对称性,是一个偏序关系。由上图5-3,我们可以看到,我们定义了12个角色,数据增、改科员负责a、b类数据的增加和修改,但不具备删除数据功能:数据删除科员负责a、b类数据的删除;数据维护科科长继承了数据增、改科员和数据删除科员的权限,既能对数据进行增、删、改、查:a类数据查询科员只能查询数据库中的a类数据;b类数据查询科员只能查询数据库中的b类数据;而数据查询科的科长继承了a类数据查询科员和b类数据查询科员的权限,能对a、b类数据进行查询;办公室科员负责本处的收发文登记;办公室主任继承了数据查询科科长和办公室科员的权限,既能查询a、b类数据,也能查看收发文情况;人事科的普通科员只能查询党员管理、警衔管理、工资管理的数据:人事科数据维护员继承了人事科普通科员的权限,还能对党员管理、警衔管理、工资管理的数据进行增、删、改、查:人事科科长继承了人事科数据维护员的权限,拥有了数据维护员的权限:处长在这里处于最高级别,他继承了数据维护科科长、办公室主任人事科科长的权限,能进行所有的权限操作。同时还有一个系统维护员的角色,它只能对用户进行权限分配,而不能访问所有的数据。5.3.4 角色约束rbac模型引进了约束概念。rbac中的一个基本的约束称为“相互排斥”角色约束,由于角色之间相互排斥,一个用户最多只能分配到这两个角色中的一个。例如:在数据查询科科员当中,一个人不能即查询a类数据,又查询b类数据,在数据维护科科员当中,一个人不能对数据进行增、删、改的所有操作。另外,“基本限制”约束规定了一个角色可被分配的最大用户数。在我们研制的系统中,处长这个角色最多被赋予5个人,数据维护科科长、

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论