(产业经济学专业论文)电子商务环境下基于角色的访问控制模型的研究与实现.pdf_第1页
(产业经济学专业论文)电子商务环境下基于角色的访问控制模型的研究与实现.pdf_第2页
(产业经济学专业论文)电子商务环境下基于角色的访问控制模型的研究与实现.pdf_第3页
(产业经济学专业论文)电子商务环境下基于角色的访问控制模型的研究与实现.pdf_第4页
(产业经济学专业论文)电子商务环境下基于角色的访问控制模型的研究与实现.pdf_第5页
已阅读5页,还剩56页未读 继续免费阅读

(产业经济学专业论文)电子商务环境下基于角色的访问控制模型的研究与实现.pdf.pdf 免费下载

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

文档简介

首都经济贸易大学硕士学位论文 电子商务环境下基于角色的访问控制模型的研究与实现 i 摘要摘要 近年来,全球跑步进入网络经济的时代,电子商务快速发展,密切关系着每一个 人的日常生活。伴随着电子商务的快速发展,其安全问题也就日益重要。访问控制技 术作为电子商务安全体系中非常重要的一个环节,受到了各界的广泛关注。对访问控 制模型进行研究具有非常重要的理论意义和实际价值。 基于角色的访问控制模型(roll-based access control,rbac)的核心思想是 将访问权限与角色相联系,然后通过给用户分配合适的角色,使得用户与访问权限相 关联。它可以非常灵活地对系统用户进行授权,体现最小授权的思想。但是在实际应 用中,尤其是跨系统、多用户大型电子商务系统中,角色的数目将非常巨大,权限的 数目也非常巨大。 那么如何管理庞大的角色数据库以及如何及时更新角色与权限的关 系已满足客户的需求成为了一个非常大的难题。 针对跨系统、多用户大型电子商务的特点,本文通过对基于角色的访问控制模型 进行深入研究,提出一个 rbac 的改进模型。本文详细定义了 rbac 改进模型的概念和 规则,并实现其 xacml 策略语言框架下的描述。在此基础上,本文用 java 语言实现 了 rbac 改进模型的主要模块。 关键词:关键词:访问控制技术 基于角色的访问控制模型 rbac xacml 首都经济贸易大学硕士学位论文 电子商务环境下基于角色的访问控制模型的研究与实现 ii abstract in recent years, the worlds running into the era of network economy, the e-commerce has close relationship with the daily life of every individual. with the rapid development of e-commerce, its security problems will become increasingly important. access control technology, which is a very important aspect of e-commerce security system, has been widespread concern. a study on the access control model has a very important theoretical significance and practical value. in role-based access control (rbac), permissions are associated with roles, and users are made members of roles thereby acquiring the roles permissions. the authorization for system user can be very flexible; it reflects the thinking of the minimum authorized. however, in practical applications, especially in cross-system and multi-user e-commerce systems, the number of roles and permissions will be very large. so how to manage a large role database and how to update the relation between roles and authorities for satisfying customer needs has become a very big problem. for features of cross-system and multi-user e-commerce, this paper deeply studies the role-based access control model, and puts forward an improved model of rbac. this paper defines in detail concepts and rules of the improved model and achieves its description of xacml policy language. on this basis, it uses java language to implement the main module of this improved model of rbac. key words: access control technology rbac xacml 独 创 性 声 明 独 创 性 声 明 本人郑重声明:今所呈交的 论文 是我个人在导师指导下进行的研究工作及取得的科研成果。尽我所 知,文中除了特别加以标注和致谢的地方外,论文中不包含其他人已 经发表或撰写的内容及科研成果, 也不包含为获得首都经济贸易大学 或其它教育机构的学位或证书所使用过的材料。 作者签名 作者签名: 日期:日期: 年年 月月 日日 关于论文使用授权的说明 关于论文使用授权的说明 本人完全了解首都经济贸易大学有关保留、 使用学位论文的有关 规定,即:学校有权保留送交论文的复印件,允许论文被查阅、借阅 或网络索引;学校可以公布论文的全部或部分内容,可以采取影印、 缩印或其它复制手段保存论文。(保密的论文在解密后应遵守此规定) 作者签名: 作者签名: 导师签名: 导师签名: 日期: 日期: 年 年 月 月 日 日 首都经济贸易大学硕士学位论文 电子商务环境下基于角色的访问控制模型的研究与实现 第 1 页 共 58 页 1 绪论绪论 1.1 论文研究的背景及意义论文研究的背景及意义 网络尤其是互联网技术的出现,大大提高了信息流通的速度和效率,使得越来越 多的人和企业通过网络从事相关工作,同时网络的数据交换和业务协作越来越频繁。 电子商务一出现就以惊人的速度发展,并席卷全球,成为当今各界研究、开发和应用 的热点。与其相关的各项技术也站到了计算机工程与应用领域的最前沿。 但是随着电子商务快速发展,安全管理就日益重要,成为系统发展的一个瓶颈。 据2009 年中国电子商务高峰论坛调查表明,电子商务的发展受到了网络安全非 常大的制约,40%的调查者认为安全是电子商务发展的第一影响因数。 在电子商务系统安全的体系下,授权访问是其中非常重要的一个部分。早期,大 多数的系统采用主动访问控制模型和强制访问控制模型对资源的访问授权进行管理。 主动访问控制采取了一些诸如身份认证、密码验证等安全策略,但是由于管理的粒度 太小,无法做到对资源的全局控制。强制访问控制根据秘密程度把信息分为未知、普 通、秘密、机密、绝密 5 级,然后给用户赋予访问权限,这种方式在一定程度上能解 决信息的非授权访问问题,但这种方式往往会出现,为用户分配的权限比它实际应该 具有的权限要大的情况,即没有实现最小特权机制。这些问题都给信息资源的安全留 下了重大隐患。 为此,各国学者对访问控制技术进行了大量研究,提出了一些新的模型,其中应 用最广泛的为基于角色的访问控制模型(roll-based access control,rbac) 。rbac 的核心思想就是提出了角色的概念,通过角色把用户与权限相结合,使得资源的管理 和授权更加灵活、安全。目前,rbac 得到了广泛的应用,对于电子商务的发展起到 了很大的促进作用。 但是在 web2.0 的浪潮下,电子商务得到快速发展,跨地域、跨平台、跨系统电 子商务系统成为当今企业发展的趋势。在这样的庞大系统中,如果使用 rbac 模型进 行授权管理, 整个系统安全面临着很多问题, 例如, 如何对数目巨大的角色进行管理? 如何加强系统的维护?如何及时调整角色与权限的关系?如何及时跟进客户的需 求?面对上述问题,本文对系统的访问控制模型提出了两点新的要求,一方面要求跨 系统、跨平台授权使用统一的标准,另一方面需要针对跨系统、多用户大型电子商务 的特点对现有基于角色的访问控制模型进行改善。 这两点将有助于合理提高授权的可 管理性和管理效率,降低管理难度,保障整个系统的安全。 针对跨系统、多用户大型电子商务的特点,本文对基于角色的访问控制模型进行 了深入的研究,提出一个 rbac 的改进模型。本文详细定义了 rbac 改进模型的概念和 规则,并实现其 xacml 策略语言框架下的描述。在此基础上,本文用 java 语言实现 首都经济贸易大学硕士学位论文 电子商务环境下基于角色的访问控制模型的研究与实现 第 2 页 共 58 页 了 rbac 改进模型的主要模块。 1.2 国内外研究现状国内外研究现状 1.2.1 基于角色访问控制模型的研究现状 1.2.1 基于角色访问控制模型的研究现状 20 世纪 70 年代,rbac 的概念被提出,90 年代初,ferraiolo 和 kuhn 详细的阐 述了 rbac 的概念。1996 年 raci sandhu 等人提出了 rbac96 的模型,这是一个突破 性的进展,为后续模型奠定了基础。随着系统的发展,角色的管理越来越庞大,所以 raci sandhu 等人在 1997 年提出了 arbac97 模型,其主要思想是用 rbac 管理 rbac。 99 年他们又提出了 arbac99 模型,用到了移动角色和非移动角色的概念。2001 年, 美国国家技术局(national institute of standard technology,nist)制订了 nist 的 rbac 标准,权限分为操作和客体两个相依的组件,增加了会话的描述。2004 年, 美国国家信息技术标准委员会(ansi/incits)将 rbac 模型确定为美国国家标准 (ansiincits359 一 2004) 。 目前,对 rbac 模型的研究非常多,大多数研究集中于是美国乔治梅森大学的 rbac96和arbac97模型, 还有美国国家标准与技术局的nist rbac模行, 以及sql3rbac 模型等。 国外对 rbac 模型的研究主要集中于模型扩展和如何应用于操作系统、数据库, 对于具体的信息系统的研究比较少。punjab engineering college 的 ashish gupta 和 alka jindal 对 arbac97 模型进行了深入研究,2007 年提出了一个特征角色表 (character role list)的概念,提高了角色继承的安全性。purdue university 的 ninghui li、ji-won byun 和 elisa bertino2007 年对 ansi rbac 模型中存在的设 计问题进行了分析, 并提出改进方案。 university of ottawaroyal 的 m.a.c. dekker, j.g. cederquist, j. crampton 对现有 rbac 中管理角色的继承进行了深入的研究, 2009 年提出了强势管理角色和弱势管理角色的概念,使得管理角色的继承更加合理。 国内对 rbac 模型的研究主要集中于如何应用于具体的信息系统。北京航天航空 大学的毛习文和刘连忠在 2007 年解决了 rbac 模型在特定系统内, 当用户职责发生变 化时,角色和权限的同步更新问题。江南大学的李志华 2007 年研究了 rbac 模型的约 束问题,提出了一种树状细粒度 rbac 模型,即 tg-rbac 模型。南京大学的夏磊和黄 浩 2008 年给出了 rbac 模型模拟实施 blp 模型的方法,对于 rbac 和 mdc 的统一性进 行了深入研究。四川大学的彭舰、谢川和廖朝辉在 2008 年对 rbac 模型的授权策略进 行了研究, 提出了网格环境下的优化方法。 西北大学的牛建涛、 高岭和孙龙军在 2009 年对 rbac 中角色继承的私有权限问题进行了研究,引入了虚拟权限的概念,使得问 题得到很好的解决。重庆大学的傅郦和陈庆峰在 2009 年提出了一种基于本体的 rbac 模型访问控制机制(ontorbac) ,很好地支持了 rbac96 模型,并取得一定扩展。 首都经济贸易大学硕士学位论文 电子商务环境下基于角色的访问控制模型的研究与实现 第 3 页 共 58 页 针对不同类型的应用,rbac 模型在理论上还有很多种扩展。近年来有以下一些 主要工作:时序 rbac 模型(temporal rbac model)、基于客体的 rbac 模型 (oc-rbac) 、分布式 rbac 模型(distributed rbac model)、基于任务和角色的 t-rbac 模型等等。 1.2.2 xacml 策略语言的研究现状 1.2.2 xacml 策略语言的研究现状 随着计算机技术和网络的发展,大型数据库管理系统网络应用系统或网络应用系 统面临着一个难题,就是越来越复杂的数据资源的安全管理,而授权访问是其中重要 的一个环节。目前,大多数的系统都是使用专用的方式实现授权访问策略,使得跨系 统、跨平台的访问成为一个难题。xacml 的初衷就是开发一项访问控制和授权系统的 标准。 2003年2月, oasis批准xacml(extensible access control markup language)1.0 版本成为 oasis 标准(oasis standard)。2003 年 8 月,oasis xacml 技术委员会 (technical committee, tc)批准 xacml1.1 版本成为 oasis 委员会规范(oasis committee specification) 。2005 年 12 月 xaeml2.0 和相关的文档被批准为 oasis 标准。以及目前最新版本为 2.0,xacml3.0 版本的 xacml 标准还在制定中。 国内外的研究主要集中于使用 xacml 语言实现特定系统的安全功能。中国科学软 件研究所的李晓峰和何永忠在 2007 年根据 xacml admin 中访问策略和管理策略混合 的特点, 提出了一个在 pdp 中将策略树分割为访问策略树和管理策略树来提高在线判 定性能的匹配方案。swedish institute of computer science 的 ludwig seitz, erik rissanen 在 2008 年研究了如何用 xacml 语言实现 netconf 控制模型。同年,george mason university 的 vijayant dhankhar、 saket kaushik 和 duminda wijesekera 研究了如何用 xacml 实现特殊资源配置的框架。 中国科学软件研究所的王雅哲和冯登 国在 2009 年针对 xacml 缺乏规则冲突检测、规则冗余分析的现状,文章中利用规则 状态思想描述了多种冲突类型,分析了造成规则冗余的原因,并给出了判定定理。 目前,一些软件公司和高校科研机构已经开发出了一些基于 xacml 的代码和开发 工具,如表 1-1 所示。 首都经济贸易大学硕士学位论文 电子商务环境下基于角色的访问控制模型的研究与实现 第 4 页 共 58 页 表 1-1 xacml 的部分实现 实现列举 具体描述 实现列举 具体描述 sun 公司的 xacml 实现 sunxacml2.0 版已经发布,sunxacml api 宣布对 xacml2.0 版的全部特性实现支持, 完全采用 java 语言实 现,而且是开源软件。 xacml 的.net 实现 指 xacml.net 的实现是采用 c#语言实现的开源软件 xacml policy verification and change analysis tool 是由 brown university 大学开发的 xacml 策略验证和分析 工具 axescon xacml2.0 engine 为 xacml2.0 engine 现在推出的 beta 版本,支持最新的 xacml2.0 版本 parthenon xacml evaluation engine是由 parthenon 电脑公司开发的一个 xacml 引擎 1.3 本文研究的内容和组织结构本文研究的内容和组织结构 1.3.1 本文研究的主要内容 1.3.1 本文研究的主要内容 本文所做的工作主要为: (1)对访问控制模型的理论和 xacml 策略的基础语法进行了深入研究; (2)针对跨系统、多用户大型电子商务系统的特点,对 rbac 模型提出了改进, 并给出了改进模型的定义和规则; (3)应用 xacml 策略语言,分析了 rbac 改进模型主要模块的数据流,并实现了 主要模块。 1.3.2 本文的组织结构 1.3.2 本文的组织结构 第 1 章 介绍跨系统、多用户大型电子商务环境下访问控制技术的新要求,导出 本文的研究背景,同时对 rbac 和 xacml 的国内外研究现状进行了分析。 第 2 章 对访问控制模型的理论进行了研究,包括自主访问控制模型 dac、强制 访问控制模型 mac 和基于角色的访问控制模型 rbac。 第 3 章 对 xacml 语法的基础知识进行了研究,详细介绍了 xacml 语言的策略、 规则和组合算法。 第 4 章 根据跨系统、多用户大型电子商务环境的特殊性,指出了 rbac 模型应 用的局限性,即角色管理困难和不能适应组织结构的问题,并通过引入用户组角色的 概念,解决上述问题。用 xacml 语言对改进模型进行描述,分析 xacml 框架下主要模 块的数据流。 第 5 章 介绍了模型实现的开发环境,并用 java 语言实现 rbac 改进模型基于 xacml 框架的四个主要基本模块,最后通过一个场景验证了 pdp 和 pep 的功能。 首都经济贸易大学硕士学位论文 电子商务环境下基于角色的访问控制模型的研究与实现 第 5 页 共 58 页 2 访问控制技术基础访问控制技术基础 在国际化标准组织建立的开放式互联参考模型(open system interconnection, osi)中,信息安全涉及五种安全服务。在这些服务中,访问控制是指通过权限限制 用户的行为,防止信息受到非授权的访问。目前,访问控制思想在电子商务中得到普 遍应用,对电子商务的发展起到了促进作用。 2.1 访问控制的基本原理访问控制的基本原理 访问控制(access control)是一种实现既定安全策略的系统安全技术,它的目标 为防止非法访问相关资源,例如,计算资源、通信资源、信息资源等。非法访问是指 未经授权使用、泄露、修改、销毁相关资源。系统通过访问控制服务可以限制非法用 户对关键资源进行访问,也可以避免合法用户的不慎操作所造成的破坏。 访问控制系统一般包括: ? 主体(subject) :指发出访问操作要求的主动方,它通常为用户或者用户的某 个进程; ? 客体(object) :主体试图访问的一些相关资源; ? 安全访问策略:一套规则,它用来确定一个主体是否对客体拥有访问的权利。 访问控制功能组件包括了 4 个组成部分:发起者(initiator) 、访问控制执行功能 (access control enforcement function,aef) 、访问控制决策功能(access control decision function,adf)和目标(target) 。 发起者是指信息系统中系统资源的使用者,是访问控制系统中的主体;目标是指 基于计算机或通信的资源, 被发起者访问或试图访问, 是访问控制系统中的客体; aef 的功能是为发起者与目标之间建立通信的桥梁, 它必须依照访问控制决策模块的授权 查询指示来建立链接,也就是说,当发起者向目标发出执行某项操作的要求时,aef 会将这个请求信息告知 adf,并由 adf 决定是否允许访问。在信息系统中,adf 说是 访问控制的核心,adf 依据一套安全访问的策略对发起者提出的访问请求进行判决。 目前,系统中所包含的需要保护的资源越来越多,这些资源可能为硬件资源,如 cpu、打印机、内存区域等,也可能为软件资源,如进程、文件、数据库记录等。根 据面向对象技术的思想,系统可以将这些资源看成对象,在整个系统中它们有自己唯 一命名的名称, 并且对象包含一个有限的操作集合, 定义了可以对它进行的各类操作。 根据能够控制的访问对象粒度, 访问控制可以分为粗粒度 (coarse grained) 访问控制、 中粒度(medium grained)访问控制和细粒度(fine grained)访问控制。在系统的设 计过程中,其实并没有严格的区分标准,但人们通常把能够控制到文件甚至记录对象 的访问控制,看为细粒度访问控制。 计算机信息系统访问控制技术最早产生于 20 世纪 60 年代,随后出现两种重要的 首都经济贸易大学硕士学位论文 电子商务环境下基于角色的访问控制模型的研究与实现 第 6 页 共 58 页 访问控制技术,即自主访问控制(discretionary access control,dac)和强制访问控 制(mandatory access control,mac) 。它们在多用户系统(如各种 unix 系统)中 得到广泛的应用。20 世纪 90 年代以来,许多新的访问控制方式不断涌现,如基于角 色的访问控制、基于任务的访问控制等,它们为目前跨平台、跨系统访问控制的主要 技术。 2.2 自主访问控制自主访问控制 自主访问控制最早出现在 20 世纪 70 年代初期的分时系统中,它是多用户环境下 最常见的一种访问控制技术,也是当前计算机系统中实现最多的访问控制机制。在自 主访问控制的机制下,客体的拥有者对于该客体的访问授权拥有完全的管理权,他有 权泄露、修改该客体的任何信息。也就是说,某个主体可以显式地指定其他主体对它 所拥有的信息资源是否可以访问,以及可执行的访问类型。因此,dac 又被称为基于 拥有者的访问控制。 在自主访问控制中,用户可以随意地将自己拥有的访问权限赋给其他用户,以后 同样可以随意地撤销所赋权限, 这使得管理员难以确定哪些用户对哪些资源有访问权 限,不利于统一的全局访问控制的构建。因此,dac 技术虽然在一定程度上实现了权 限隔离和资源保护,但是在资源共享方面难以控制。 实现 dac 最直接的方法是利用访问控制矩阵。它的每一行表示一个主体,每一列 表示一个受保护的客体, 矩阵中的元素用来表示主体可对客体进行的访问操作 (例如, 读、写、执行、修改、删除等) 。 访问控制矩阵虽然直观,但是在实际的系统中,并不是每个主体和客体之间都存 在着权限关系,相反主体和客体之间的权限关系可能比较少,这样就存在着大量的空 白项。因此,在实现 dac 时,开发人员为了提高效率,通常不是将整个矩阵保存,而 是基于矩阵的行(主体)或列(客体)来表示访问控制信息。 2.2.1 基于行的自主访问控制 2.2.1 基于行的自主访问控制 基于行的自主访问控制是在每个主体上都附加一个该主体可访问的客体的列表。 根据列表内容的不同,实现方式包括:能力表(capability list) 、前缀表(profiles list) 和口令(password) 。 在系统中,最常用的方法是利用能力表实现控制,用户是否可以对客体进行访问 以及进行何种模式的访问都是由用户具备的能力决定。 在利用前缀表实现基于行的访 问控制时,每个主体都拥有一个前缀表,包括了受保护的客体名和主体对它的访问权 限。当主体要访问某客体时,dac 将查看主体的前缀是否具有它所要求的访问权限。 在基于口令机制的自主访问控制中,每个客体都拥有一个口令,且系统只允许为一个 客体分配一个口令,或者对某一个客体的每一种访问模式分配一个口令,当主体试图 首都经济贸易大学硕士学位论文 电子商务环境下基于角色的访问控制模型的研究与实现 第 7 页 共 58 页 访问客体时,必须向系统提供该客体的口令。 图 2-1 为一个访问能力表的示例。在这个例子中,由于它的着眼点为某一主体的 访问权限,从主体的角度阐述控制信息,因此比较容易获得一个主体所被授权可以访 问的客体及其权限的信息, 但要想获得对某一特定客体有特定权限的所有主体的信息 就比较困难。而且,当某一个客体被删除之后,系统必须从每个用户的表上清除该客 体相应的条目。 文件1 r w 文件2 r 文件4 own r w 文件1 r 文件2 own r w 文件3 w 文件4 r 文件1 own r w 文件3 own r w john alice 文件3 图 2-1 访问能力表示例 在 20 世纪 70 年代,很多基于访问能力表的计算机系统被开发出来,但是在商业 上并不成功。在安全系统中,正是由于客体需要受到可靠的保护,访问授权系统才应 用而生。访问控制服务需要控制可访问某一客体的主体集合,并且能够授予或撤消主 体的访问权限,于是出现了以客体为出发点的实现方式,即基于列的自主访问控制。 2.2.2 基于列的自主访问控制 2.2.2 基于列的自主访问控制 在基于列的 dac 中, 每个客体都拥有一个可访问它的主体的明细表。 基于列的 dac 最常用的实现方式是访问控制表。 访问控制表(access control list,acl)是实现基于列的 dac 所采用最多的一 种方式。它可以对于某一客体指定任意一个用户的访问权限,同时可以将相同权限的 用户分组,并授予组的访问权限。图 2-2 给出了一个 acl 的示例。 首都经济贸易大学硕士学位论文 电子商务环境下基于角色的访问控制模型的研究与实现 第 8 页 共 58 页 john own r w alice r bob r w alice own r w bob r john own r w alice w alice r bob own r w 文件1 文件2 文件3 文件4 图 2-2 访问控制表示例 acl 的优点是表述直观、易于理解,而且比较容易查出拥有某一特定资源的访问 权限的所有用户, 可以有效地进行授权管理。 在一些实际应用中, 还对 acl 作了扩展, 使得 acl 可以进一步控制用户的合法访问时间,决定是否需要审计等。 但是当系统的网络规模很大,涉及到得企业很多时,acl 就暴露很多问题。由于 alc 需对每个资源指定可以访问的用户或组以及相应的权限,所以当网络中资源很多 时,在 acl 中设定大量的表项将是一个庞大、烦琐的工作。而且当用户或组的权限发 生变化时,管理员需要及时修改用户对所有资源的访问权限。另外,在许多组织中, 服务器都是彼此独立运行的,系统管理员各自设置自己的 acl,为了实现整个系统内 的一致的控制政策,需要各自的管理部门的密切合作。所以,这些问题都使得访问控 制的授权管理变得费力而烦琐,且容易出错。 2.2.3 自主访问控制策略的局限性 2.2.3 自主访问控制策略的局限性 dac 存在的局限性主要为: (1)不能有效地对资源进行管理; (2)在系统中无法 体现用户之间的关系,且不易管理;(3)信息容易泄漏,无法抵御病毒的攻击。在 dac 下,一旦带有病毒的应用程序被激活,病毒就可以肆意泄漏、破坏各类信息,甚至改 变这些信息的访问授权模式。 针对 dac 的不足,一些学者对它提出了一系列改进的方法。早在 20 世纪 70 年代 末,m.h.harrrison、w.l.ruzzo 和 j.d.ullman 就对传统 dac 模型进行了扩充,他们 提出一种半自主式的 hru 访问控制模型, 即一方面客体的所有者自主管理其客户的访 问,另一方面通过安全管理员限制访问权限任意扩散。hru 模型专门为安全管理员开 发了一种防止管理访问权限扩散的描述语言。hru 模型认为管理员可以限制客体访问 权限的传播, 但不能对访问权限扩散的程度和内容做出具体的定义。 1992 年, sandhu 首都经济贸易大学硕士学位论文 电子商务环境下基于角色的访问控制模型的研究与实现 第 9 页 共 58 页 等人为了体现主体需要拥有访问权限的思想,将 hru 模型发展为 tam(typed access matrix)模型,它在客体和主体产生时就对访问权限的扩散作了具体的规定和定义。 随后, tam 发展为 atam 模型,它可以描述访问权限需要动态变化的系统安全策略。 上述改进在一定程度上改善了 dac 的安全性能, 但由于 dac 的核心思想是资源的拥有 者控制资源的访问授权, 这就从根本上导致这些改进模型不能用于具有高安全要求的 系统,因而它们几乎没有得到实际应用。 在 dac 系统中,拥有一定访问权限的某主体可以直接或间接地将权限传递给其他 主体。系统管理员很难确定哪些用户拥有哪些资源的访问权限,非常不利于构建统一 的全局访问控制。其次,在许多组织中,组织自身是系统资源的真正所有者,它们必 须使得访问控制与授权机制的实现结果与组织内部的规章制度相一致, 并且必须由管 理部门统一实施访问控制, 不允许用户自主地处理。 显然, dac 已不能适应这些要求。 2.3 强制访问控制强制访问控制 顾名思义,强制访问控制(mandatory access control,mac)是“强加”给访 问主体的,即系统强制主体服从访问控制策略。 强制访问控制的基本思想是:每个主体都有既定的安全属性,每个客体也都有既 定安全属性,主体对客体是否能执行特定的操作,取决于二者安全属性之间的关系。 主体与客体的安全属性是不能够改变的,它们是由管理部门(如安全管理员)自动地 按照严格的规则来生成,不像访问控制表哪样可以由用户直接或间接地修改。当主体 对客体进行访问时,根据主体的安全属性和访问方式,系统将比较主体与客体的安全 属性,从而决定是否允许主体的访问请求。主体不能改变自身的安全属性,也不能改 变任何客体的安全属性,包括属于用户的客体,而且主体也不能将自己拥有的访问权 限授予其他任何主体。 mac 和 dac 是两种不同类型的访问控制机制,它们通常结合起来一起使用。仅当 主体能够同时通过 dac 和 mac 检查时,它才能访问某一客体。利用 dac,用户可以有 效地保护属于自己的资源,防止其他用户的非法获取;而利用 mac 则可提供更加强有 力的访问保护, 使的访问用户不能通过意外事件或者有意识的误操作来逃避安全控制 的检查。 mac 具有非常高的安全性,特别适合于多层次安全级别的军事应用当中,也适用 于政府部门、金融部门等。 事实上,人们一般都将 mac 与多级安全(mls)体系相提并论。mls 是由美国国防 部定义的,起源于 20 世纪 60 年代末期。其实美国国防部对人工管理和存储机密信息 早有严格的政策,即军事安全策略。多级安全策略是军事安全策略的数学描述。 安全级是由两方面的内容构成的: (1)保密级别:又叫敏感级别,比如可以分为绝密级、机密级、秘密级、无密 首都经济贸易大学硕士学位论文 电子商务环境下基于角色的访问控制模型的研究与实现 第 10 页 共 58 页 等; (2)范畴集:是指在组织系统中,根据人员的不同职能所划分的不同领域。例 如人事处、财务处等。 安全级别一般包括一个保密级别和任意多个范畴集,即它通常可以写成保密级别 后跟随一个范畴集的形式,例如,机密;人事处;财务处。范畴集可以为空。 在安全级中,保密级别是按照线性顺序排列的,例如,公开秘密机密绝密; 而范畴是互相独立且无序的,它们之间存在三种关系,即包含、被包含和无关。两个 安全级之间的关系有如下 4 种: (1)第一安全级支配第二安全级:即第一安全级的级别大于等于第二安全级的 级别,第一安全级的范畴集包含第二安全级的范畴集。 (2)第一安全级支配第二安全级,或第二安全级支配第一安全级:即第二安全 级的级别大于等于第一安全级的级别, 第二安全级别的范畴集包含第一安全级的范畴 集。 (3)第一安全级等于第二安全级:即第一安全级的级别等于第二安全级的级别, 第一安全级的范畴集等于第二安全级的范畴集。 (4)两个安全集无关:即第一安全级的范畴集不包含第二安全级的范畴集,同 时,第二安全级的范畴集不包含第一安全级的范畴集。 “支配”在此处表示偏序关系,类似于“大于或等于”的含义。 2.3.1 bell-lapudula 模型 2.3.1 bell-lapudula 模型 强制访问控制机制最典型的例子是 bell-lapudula (blp) 模型, 它是由 david bell 和 leonard lapadula 于 1973 年提出,简称 blp 模型。blp 模型是模拟了军事安全策 略的计算机操作模型,是最早的、最常使用的一种模型,并且已实际应用于许多安全 操作系统的设计中。blp 模型的目标就是,详细阐述计算机的多级操作规则。多级安 全策略是对军事安全策略的精确描述,blp 模型是最有名的多级安全策略模型,所以 常把多级安全的概念与 blp 模型等同。 这个模型特别复杂,本文只对它进行简单的介绍。在 blp 模型中,所有的主体和 客体都有一个安全标签,并且其只能由安全管理员赋值,其余用户都不能改变安全标 签。 在 blp 模型中,用标记主体或客体的标签,当主体访问客体时,需要满足如下 两条规则: ? 简单安全性:如果主体 s 能够读客体,则( )( )s 。 ? 特性:如果主体 s 能够写客体,则( )( )s 。 简单安全性规则要求一个主体对一个客体进行“读”访问时的必要条件为,主体 首都经济贸易大学硕士学位论文 电子商务环境下基于角色的访问控制模型的研究与实现 第 11 页 共 58 页 的安全级支配客体的安全级,主体的范畴集合包含客体的全部范畴。也就是说,主体 只能向下读,而向下读受到限制。 特性规则要求一个主体对一个客体进行“写”访问时的必要条件为,客体的 安全级别支配主体的安全级,客体的范畴集合包含主体的全部范畴。也就是说,主体 只能向上写,不能向下写。 特性规则同意一个主体可以向一个高安全级的客体写入信息。从信息安全的 角度来说,系统没有理由拒绝向上“写”的方式,如采用追加的方式允许主体把信息 添加到它不能“读”的文件末尾。这种想法实现起来相当困难,在现实中,大多数实 现的多项安全体系只是允许主体能够写与它安全级相同的客体。当然,如果主体既想 读客体又想写客体,二者的安全级就必须相等。 上述两个特性保证了信息的单向流动。 主体与客体之间的访问关系如表2-1所示。 从表中可以看出,信息只能由低安全属性向高安全属性的方向流动,因此避免了 dac 机制的敏感信息被泄露的情况。但是,blp 模型也有一个问题:高安全级别所有者所 拥有的文件永远不能被低安全级别的人访问,即使两个级别不同的实体是可信任关 系,它们也不可能相互通信。所以,需要可信任的安全管理员对一些实体的安全级别 进行调整,这样才能确保高安全级别的实体与低安全级别的实体相互通信,例如在网 络环境中,连接的建立需要双方的相互确认。同时 blp 模型不能消除隐藏通道:由于 低安全级别的客体可以随意写高安全级别客体,blp 模型也不能确保客体的完整性。 表 2-1 给出了 blp 模型中主客体的关系。 表 2-1 blp 模型中主体与客体的访问关系 主体 客体 主体 客体 ts s c u ts r/w w w w s r r/w w w c r r r/w w u r r w r/w 2.3.2 biba 模型 2.3.2 biba 模型 biba 模型是一个与 blp 模型相反的模型,用以防止客户非法修改数据。可以说, biba 模型是 blp 模型的一个副本。 用表示主体或客体的安全标签,当主体访问客体时,需要满足如下两条规则: ? 简单完整性原则:如果主体 s 能够读客体,则( )( )s 。 ? 属性:如果主体 s 能够写客体,则( )( )s 。 上面的两条规则限制了不可靠信息在系统内部的活动。 biba 模型想要实现的完整 首都经济贸易大学硕士学位论文 电子商务环境下基于角色的访问控制模型的研究与实现 第 12 页 共 58 页 性是 blp 模型所忽略的,但是同样也付出了安全性降低的代价。主体与客体之间的访 问关系如表 2-2 所示。 表 2-2 biba 模型中主体与客体的访问关系 主体 客体 ts s c u ts r/w r r r s w r/w r r c w r/w r r u w w w r/w biba 模型虽然保证了系统的完整性, 但是可能有不信任实体蓄意泄露高安全级别 信息的危险。因此,设计人员可以把 blp 模型和 biba 模型结合起来,即对于普通的 实体采用 blp 模型,对于可信任的实体采用 biba 模型。这种结合在原理上被认为是 简单的,但在实际应用中,存在着很大的内在复杂性,所以设计人员必须通过设置更 多的范畴来满足这些复杂应用在机密性和完整性方面的需求, 这些不同性质在同时满 足安全和完整性目标方面是难以配合使用的, 特别当保密性和完整性都受到充分重视 的时候,就非常容易出现主体不能访问任何数据的情况。 由于上述原因,使得 biba 模型仅在 multics 和 vax 等少数几个系统中实现。因 此,无论是依据 biba 模型来有效实现系统完整性访问控制,还是把完整性和机密性 相结合,biba 模型都很难满足实际系统的需求。 2.3.3 强制访问控制的局限性 2.3.3 强制访问控制的局限性 mac 就是通过信息的单向流动来防止信息的扩散,同时抵御病毒对系统保密性的 攻击。mac 的不足主要表现在两个方面:一方面,实现工作量太大,管理不便,使用 不灵活,由于涉及的应用领域比较窄,一般只用于军方等具有明显等级观念的行业或 领域;另一方面,mac 对授权的可管理性也考虑不足。 2.4 基于角色的访问控制基于角色的访问控制 随着网络技术的发展,网络应用系统所面临的一个难题就是如何对日益复杂的数 据资源进行安全管理。传统的访问控制技术都是由主体和访问权限直接连接,但是在 实际应用中,主体和客体的数目一般都非常巨大,传统访问控制技术已远远不能满足 复杂的授权管理的要求。 为了满足新的安全需求,近年来,各国学者对访问控制技术进行了大量研究:一 方面,对传统访问控制技术的局限性进行改进,另一方面,研究新的访问控制技术以 适应当前计算机信息系统的安全需求,从而产生了一些更加灵活的访问控制技术。其 中,基于角色的访问控制(roll-based access control,rbac)的应用最为广泛。 首都经济贸易大学硕士学位论文 电子商务环境下基于角色的访问控制模型的研究与实现 第 13 页 共 58 页 rbac 的概念早在上世纪 70 年代就已经被科研人员提出,但是在相当长的一段时间内 没有受到应有的重视。进入上世纪 90 年代,安全需求的发展使得 rbac 再次进入人们 的视野,美国很多学者对此进行了大量研究。目前,已经有很多 rbac 模型的版本。 2.4.1 rbac 的基本原理 2.4.1 rbac 的基本原理 rbac 的核心思想就是将访问权限与角色相联系,然后为用户分配合适的角色, 从 而把用户与访问权限相关联。角色是依据企业组织内各种不同的任务需求而设置的, 根据用户在企业中的职权和责任来关联用户和他们的角色。 用户可以在不同的角色间 进行转换,同时系统不但可以添加、删除角色,还可以对角色的权限进行添加、删除 等操作。通过 rbac 模型,管理员可以把安全性放在一个接近实际企业组织结构的层 面上进行管理。因此,在 rbac 中,可以依据组织结构中不同的职能岗位划分角色, 它们封装了资源的访问权限,用户通过与其相关联的角色间接地访问系统资源,并对 系统的资源执行合理许可范围内的操作。如图 2-3 所示,rbac 包含了 3 个实体:用 户(user) 、角色(role)和权限(permission) 。 用户1 用户2 . . 用户n 角色1 角色2 . . 角色n 权限1 权限2 . . 权限n 会话 限制 图 2-3 rbac 结构图 用户是对资源进行操作的主体,可以是人或计算机等。权限表示对系统中客体进 行特定模式访问的操作许可,即对某一数据对象的可操作权利。就数据库系统而言, 数据对象可以是表、字段、记录,而相应的操作有读、写、删除和修改等。一项许可 就是指主体可以对某数据对象进行某种特定操作的权利。 在 rbac 中,角色对应于组织中某一特定的职能岗位,具有处理某些事物的权限。 这与实际生活中的角色相似,以某学校为例,角色可以是校长、处长、科长、教员、 学员等。不过, rbac 模型中的角色与实际的角色概念还是有所不同。在一个 rbac 模型中,用户和角色是多对多的关系,即一个用户可以被赋予多个角色,一个角色也 可以对应于多个用户,这些角色是根据系统的具体要求来定义的;同样,一个角色可 以拥有许多个权限,一个权限也可以与多个角色相关联。所以在系统授权管理中,角 色作为一个桥梁把用户和权限相联系, 一个角色与若干个权限相关联表示该角色拥有 首都经济贸易大学硕士学位论文 电子商务环境下基于角色的访问控制模型的研究与实现 第 14 页 共 58 页 这组权限集合, 而一个角色与若干用户的关联也可以表示为该角色拥有一个具有若干 相同身份的用户集合。 图 2-3 中的会话为一个动态的概念,一次会话表示用户的一个活跃进程,说明用 户与系统进行了的一次交互。用户与会话的关系为是一对多,即一个用户可同时打开 多个会话。用户登录到系统中以后

温馨提示

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

评论

0/150

提交评论