(计算机软件与理论专业论文)长治网通mis的访问控制研究与系统实现.pdf_第1页
(计算机软件与理论专业论文)长治网通mis的访问控制研究与系统实现.pdf_第2页
(计算机软件与理论专业论文)长治网通mis的访问控制研究与系统实现.pdf_第3页
(计算机软件与理论专业论文)长治网通mis的访问控制研究与系统实现.pdf_第4页
(计算机软件与理论专业论文)长治网通mis的访问控制研究与系统实现.pdf_第5页
已阅读5页,还剩65页未读 继续免费阅读

下载本文档

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

文档简介

摘要 摘要 随着计算机技术、通信技术和网络技术的飞速发展,大多数企业都希望通过自 身的信息化建设来提高企业竞争力、降低经营成本、提高企业决策的效率。然而 网络应用的安全性问题成为制约其发展的主要因素,在管理大量的网络系统时, 安全管理的复杂性是个很具挑战性的问题。当前最为流行的访问控制技术作为网 络安全防范和保护的主要策略,已经渗透到操作系统、数据库、网络的各个方面。 而基于角色的访问控n ( r b a c ) 模型作为主流的访问控制模型,与传统的自主访问 控制和强制访问控制相比,具有更高的灵活性和扩展性。 本文针对长治市网通集团管理信息系统的设计与实现,首先比较分析访问控制 三种主流技术:自主访问控制、强制访问控制、基于角色的访问控制,着重研究 了r b a c 模型。并根据m i s 的业务需求引入了分组、岗位的感念,扩充了基于角 色访问控制模型,称之为g s r b a c w e b 模型( g r o u pa n ds t a t i o nr o l e - b a s e dc o n t r o l m o d e l ) 。为了加强业务上的管理引入了分组和岗位的概念,简化授权的复杂性。 在g s r b a c w e b 模型的基础上,设计其各项功能组件,并采用新模型对a c e g i 安 全系统进行扩展,使其成为g s r b a c w e b 模型的具体实现。同时为了加强系统的 协同工作理念,采用o s w o r k f l o w 工作流引擎对系统中的需要数据流转的功能进行 设计和实现。分别从系统建模、访问控制方案的设计、o s w o r k f l o w 工作流技术、 功能模块设计和实现等方面详细介绍了长治市网通集团管理信息系统开发的过 程。 关键词:访问控制;r b a c ;g s r b a c w e b ;a c e g i ;o s w o r k f l o w 分类号: a b s t r a c t w i t ht h ed e v e l o p m e n to ft h ec o m p u t e r , c o m m u n i c a t i o na n dn e t w o r k ,m o s to ft h e e n t e r p r i s e sw a n tt oe n h a n c ec o m p e t i t i v e n e s s ,r e d u c eo p e r a t i n gc o s t sa n di m p r o v et h e e f f i c i e n c yo fd e c i s i o n - m a k i n gb yi n f o r m a t i o nc o n s t r u c t i o n b u tt h es e c u r i t yo f n e t w o r k a p p l i c a t i o nh a sb e c o m eo n eo fm a i nf a c t o r st h a tr e s t r i c ti t sd e v e l o p m e n t ;s e c u r i t y m a n a g e m e n ti sv e r yc h a l l e n g i n gf o ri t sc o m p l e x i t yi nt h ea d m i n i s t r a t i o no fm a n y n e t w o r ks y s t e m s a c c e s sc o n t r o l ,a sa ni m p o r t a n ts e c u r i t yt e c h n o l o g y , h a sb e e na p p l i e d i nt h eo p e r a t i o ns y s t e m ,t h ed a t a b a s em a n a g e m e n ts y s t e m s ,s e c u r i t ym a n a g e m e n ta n d n e t w o r ko p e r a t i n gs y s t e me t c r o l e - b a s e da c c e s sc o n t r o l ( r b a c ) m o d e li sn o w a d a y s t h eb e s ta n dm o s tp o p u l a ra c c e s sc o n t r o lm o d e l c o m p a r e dw i t ht r a d i t i o n a l d i s c r e t i o n a r ya n dm a n d a t o r ya c c e s sc o n t r o l ,i tc a np r o v i d eb e t t e rf l e x i b i l i t ya n d e x p a n d a b i l i t y t h ep a p e ra i m sa tt h ed e s i g na n di m p l e m e n t a t i o no fc h a n g z h in e t c o mm i s ,f i r s t , t h ep a p e rc o m p a r e sa n da n a l y z e st h ea d v a n t a g e sa n dd i s a d v a n t a g e so ft h et h r e em a i n t e c h n o l o g i e so fa c c e s sc o n t r o l :d a c ,m a c ,r b a c t h e nt h ep a p e rs p e c i a l i z e si nt h e r o l e - b a s e da c c e s sc o n t r o lm o d e l ,a n di n t r o d u c e st h ec o n c e p t so fg r o u pa n ds t a t i o n a c c o r d i n gt ob u s i n e s sn e e d so fc h a n g z h in e t c o mm i s t h ee n l a r g e dr o l e - b a s e da c c e s s c o n t r o li sc a l l e dg s r b a c w e bm o d e l ( g r o u pa n ds t a t i o nr o l e b a s e dc o n t r o l w e b m o d e l ) t oe n h a n c e b u s i n e s s m a n a g e m e n t a n d s i m p l i f y t h e c o m p l e x i t yo f a u t h o r i z a t i o n ,w ei n t r o d u c et h ec o n c e p to fg r o u pa n ds t a t i o n d e s i g ne v e r yf u n c t i o n a l c o m p o n e n ta n dm a k eu s e o ft h em o d e lt oe x p a n da c e g is e c u r i t ys y s t e mo nt h eb a s i so f g s r b a c w e bm o d e l s e c o n d ,u s et h eo s w o r k f l o ww o r k f l o we n g i n ei nt h em i s ,i n o r d e rt os t r e n g t hi t st e a m w o r kc o n c e p t d e s c r i b ed e v e l o p m e n tp r o c e s so fc h a n g z h i n e t c o mm i si nd e t a i lf r o ms y s t e mm o d e l i n g ,a c c e s sc o n t r o l ,o s w o r k f l o ww o r k f l o w t e c h n o l o g ya n dt h ef u n c t i o n a lm o d u l e k e y w o r d s :a c c e s sc o n t r o l ;r b a c ;g s r b a c w e b ;a c e g i ;o s w o r k f l o w c i 。a s s n o : v 学位论文版权使用授权书 本学位论文作者完全了解北京交通大学有关保留、使用学位论文的规定。特 授权北京交通大学可以将学位论文的全部或部分内容编入有关数据库进行检索, 并采用影印、缩印或扫描等复制手段保存、汇编以供查阅和借阅。同意学校向国 家有关部门或机构送交论文的复印件和磁盘。 ( 保密的学位论文在解密后适用本授权说明) 学位论文作者签名: :氰畴穆 导师签名: 诹p 纵, l 签字日期:加矗年多月6 日签字日期:冽尹年石月6 日 独创性声明 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作和取得的研 究成果,除了文中特别加以标注和致谢之处外,论文中不包含其他人已经发表或 撰写过的研究成果,也不包含为获得北京交通大学或其他教育机构的学位或证书 而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作 了明确的说明并表示了谢意。 学位论文作者签名:宕、稿秀 签字日期:弘柏8 年月z 日 7 3 致谢 本论文的工作是在导师罗四维教授的亲切关怀和悉心指导下完成的。导师言 传身教一直是我前进的动力导师渊博的知识、严谨的治学风范、忘我的工作状态、 实事求是的科研作风一直激励着我,令学生终身受益。在此衷心感谢二年来罗老 师对我的关心和指导。 在项目设计和开发以及论文撰写过程中,李清勇老师都精心的指导与热诚的 帮助,并对我的论文提出了宝贵的意见,使我的论文工作能得以顺利完成,在此 向李老师表示衷心的感谢。 在实验室工作及撰写论文期间,得到了计算机学院各位老师和同学们的热情 帮助和大力的支持在此一并表示感谢。 最后我要向我的家人致以最诚挚的谢意,是你们的支持和鼓励,使我顺利地 完成了学业。 绪论 1 绪论 1 1 课题背景 随着计算机技术、网络技术和通讯技术的发展,特别是i n t e r n e t i n t r a n e t 的出现及相关技术的迅速发展,各行各业的信息化发展进程不断加快,企业和个 人对网络信息的依赖程度也不断加深,信息需求程度相对较大的部门将成为未来 社会中创造高附加值的行业。企业通过自身的信息化建设带动了相关知识产业的 进步和发展,甚至带动全社会的经济结构的优化调整,推动社会经济的全面进步。 目前,长治市网通集团对企业内部的信息管理有相当部分还是手工进行,缺乏 快捷高效的运行体制。为了推动长治市网通集团的信息化建设,用现代化的信息 手段设计出符合其业务需求的企业管理信息系统十分重要,它不但能帮助企业更 加有效的管理企业内部信息,而且还可以提高企业内信息流转的速度,增强企业 竞争力。然而在企业信息化建设过程中,最为关键的问题是保证信息系统的数据 安全性以及整个系统数据流转的协同性。 在企业信息化建设过程中,由于不同的开发商开发的各类通用软件都有各自的 用户管理和访问控制模块,但未必都能满足实际需求,在这种背景下,可能有若 干问题需要解决:用户使用不方便;存在安全隐患;管理员管理繁琐及难度增加 等。寻求一种既安全又方便的用户管理及访问控制是我们在企业信息化建设过程 中面临的主要问题。 当前的信息安全技术主要包括密码技术、身份认证、访问控制、入侵检测、风 险分析与评估等诸多方面。在实际应用中,这些安全技术相互支持与协作,各自 解决安全问题的某一方面。其中,访问控制技术是信息系统中不可或缺的安全措 施之一。访问控制技术起源于7 0 年代,其目的是为了保证系统的内部和外部用户, 对系统资源的访问和使用,以及对系统中敏感信息的访问和存取,都受安全策略 的控制。随着计算机应用技术的发展,特别是网络的应用发展,这一技术迅速应 用于计算机信息系统的各个领域。访问控制技术可以有效地拒绝未经授权的非法 用户于系统之外,也可以保证网络资源不被非法的访问和使用【l , 2 1 。访问控制可以 最大限度地阻止这种来自内部的破坏。它可以通过授权系统的控制和仅能获得访 问资源的最小权限,来保证无法越权访问。通过访问控制,就可以对他们的访问 权限进行严格的限制,降低他们的破坏力。 除了访问控制技术作为企业信息化关键技术之外,传统的信息系统由于技术 北京交通大学硕士学位论文 方面的限制在需求发生变化时不能及时地进行变化;二来大多数系统的自动化程 度仍然偏低,往往需要人手动传达各种命令并容易出现错误,从而降低了生产效 率。而新兴的工作流技术从根本上改变了传统办公系统的现状,真正实现了企业 要求的协同工作理念。在这种办公环境中,可以充分有效地利用信息资源,加强 部门、人员之间的协同工作,迅速获取信息、共享资源,更快地反馈情况,为办 公和决策提供大力支持,促进办公活动的规范化和制度化,极大地提高了办公效 率和科学决策水平。 在这种背景下,长治市网通集团希望通过自身的信息化建设来提高效率和效 益,增强企业竞争力,其急需建立适应自身发展的访问控制系统和能够保证部门 之间高效协同的管理信息系统。寻求一种适应企业发展既安全又方便的安全访问 控制技术和高效的协同工作管理系统是本文的工作重心。 1 2 本文的主要工作 本课题基于的项目是采用j 2 e e 技术实现的长治市网通集团的企业管理信息系 统,该项目通过复用通用的底层框架和基础平台,结合用户的实际需求,开发出 能实际投入到企业应用的信息系统。本文所做的主要工作包括: ( 1 ) 研究传统的访问控制模型和r b a c 访问控制技术,尤其是基于角色的访问 控制模型,并研究其在w e b 上的具体实现方法。 ( 2 ) 结合网通集团企业的业务逻辑提出了g s r b a c w e b 模型,并以此为基础 设计访问控制系统的功能组件。 ( 3 ) 研究a c e g i 安全系统,以g s r b a c w e b 模型为基础对a c e g i 系统进行扩展, 使其能够满足模型和业务的需求,并将新的访问控制系统应用到企业管理信息系 统中。 ( 4 ) 研究o s w o r k f l o w 工作流引擎,结合企业管理的实际情况,将工作流与权 限控制结合起来实现工作流在企业管理中的应用。 1 3 论文的组织结构 论文的主要内容安排如下: 第一章是绪论,主要介绍了课题的实际背景,本文的主要工作和论文的组织 结构。 第二章是相关技术理论研究,主要介绍了系统开发过程中所采用的技术、架构 以及三种主要的访问控制技术:自主访问控s u ( d a c ) 、强制访问控制( m a c ) 、基于 2 绪论 角色访问的访问控$ 1 j ( r b a c ) ,着重介绍r b a c 技术的访问控制策略。 第三章是系统总体架构设计,首先介绍系统开发过程中所要遵循的设计原则和 目标,其次介绍了本次系统开发所采用的架构,再次主要从业务功能、需求分析 和架构设计方面分析了系统需要实现的主要功能。 第四章是基于g s r b a c w e b 模型的访问控制系统,以前面的理论和系统架构 为基础,详细地介绍了引入分组、岗位和w 曲的g s r b a c w e b 模型。组、岗位分 别与角色相关联,用户通过组、岗位与角色相关联,亦可直接与角色相关联。通 过对访问控制技术的研究和企业的业务需求的分析,定义了系统必需的若干功能 组件,进而构造系统整个流程的运转。鉴于目前a c e 西系统的授权和认证的完善性, 我们以g s r b a c w e b 模型为基础对a c e g i 进行扩展,使其满足企业的业务需求。 第五章是企业管理系统部分功能设计与实现,通过对系统总体架构的分析了解 到系统包含若干子功能系统,我们以工作管理和绩效考核管理为例介绍系统设计 与实现的策略。在工作管理中采用o s w o r k f l o w 工作流引擎,详细介绍了 o s w o r k f l o w 在工作管理的应用;在绩效考核中,主要介绍了在系统开发设计中的 实现策略和相应的数据模型。 第六章是结论,是对所做工作的总结和对下一步工作的展望。 相关技术理论研究 2 相关技术理论研究 2 1j 2 e e 概述 j 2 e e 口1 ( j a v a 2p l a t f o r m ,e n t e r p r i s ee d i t i o n ) 是s u n 公司定义的一个开放式企业 级应用的规范,它是一种利用j a v a 平台来简化企业解决方案的开发、部署和管理 的体系结构。j 2 e e 技术的基础就是核心j a v a 平台或j a v a 2 平台的标准版。j 2 e e 不 仅巩固了标准版中的许多优点,例如“编写一次,随处运行 的特性,方便存取 数据库的j d b ca p i ,c o r b a 技术以及能够在i n t e r n e t 应用中保护数据的安全模式 等等。同时还提供了对e j b ,s e r v l e t ,j s p 以及x m l 技术的全面支持,其最终目 的就是成为一个能够使企业开发大幅缩短投放市场时间的体系结构。 2 1 1j 2 e e 体系结构 j 2 e e 使用多层的分布式应用模型,应用逻辑按功能划分为组件,各个应用组 件根据它们所在的层分布在不同的机器上。事实上,s u n 设计j 2 e e 的初衷正是为 了解决两层模式( c l i e n t s e r v e r ) 的弊端。在传统模式中,客户端担当了过多的角色 而显得臃肿,在这种模式中,第一次部署的时候比较容易,但难于升级或改进, 可伸展性也不理想,它使得重用业务逻辑和界面逻辑非常困难。现在j 2 e e 的多层 企业级应用模型将两层化模型中的不同层面切分成许多层,它通过应用组件和运 行时环境来构造可伸缩的企业应用。j 2 e e 定义了四个独立的层,分别是:客户层、 表示逻辑层、业务逻辑层和数据信息系统层,如图2 1 所示: 5 北京交通大学硕士学位论文 图2 - lj 2 e e 四层结构 f i g u r e2 - 1j 2 e ef o u r - t i e rs t r u c t u r e ( 1 ) 客户层 客户层用来显示信息并接收终端用户输入的信息,将接收到的数据向w e b 层 或者业务层传递。j 2 e e 应用的客户层可以基于w e b ,也可以不基于w e b 。在一个 基于w e b 的j 2 e e 应用程序中,用户的浏览器在客户层中运行,并从一个w e b 服 务器上下载w e b 层中的静态h t m l 页面或者由j s p 文件、j a v as e r v l e t 生成的动态 h t m l 页面;在一个不基于w e b 的j 2 e e 应用程序中,一个独立客户程序或其它 基于网络的系统,比如手持设备或者汽车电话中的a p p l e t 程序在客户层中运行, 在不经过w e b 层的情况下访问e n t e r p r i s ej a v ab e a n 。除此以外,客户层也可以使 用j a v ab e a n 类来管理用户的输入。 ( 2 ) w 曲层 j 2 e e 应用程序中的w e b 组件可以由支持动态网页显示的j s p 页面以及用于显 示h t m l 页面的j a v as e r v l e t 组成。在w e b 层上使用j a v as e r v l e t 和j s p 技术来接 收从用户端输入的信息,将输入发送到业务层中的e n t e r p r i s ej a v ab e a n 进行处理 并接收由业务层返回的处理结果,对客户层做出相应的响应;除此之外,w e b 层 也可以使用j a v ab e a n 类来管理用户输入并将输入数据送到业务层中运行的 e n t e r p r i s ej a v ab e a n 类来处理。在部署应用程序时,负责调用j a v as e r v l e t 或j s p 页面的h t m l 页面与w e b 组件打包在一起,部署在w e b 容器中,这样就组成了 w 曲层。 ( 3 ) 业务层 业务层经常也被称作e n t e r p r i s ej a v ab e a n ( e j b ) 层。j 2 e e 应用程序的业务层主 要是由用来处理某些特定业务领域,比如银行,零售或金融业业务逻辑的e j b 组 6 相关技术理论研究 件组成的。 e j b 从客户层或者w e b 层接收数据,对数据进行处理,如果需要的话再将数 据发送到企业信息系统层进行存储。另外,它还可以从存储中检索数据并将数据 送回客户层。运行在业务层的e j b 依赖于容器来为诸如事务,生命周期,状态管 理,多线程及资源存储池提供通常都非常复杂的系统级代码。 ( 4 ) 企业信息系统e i se n t e r p r i s ei n f o r m a t i o ns y s t e m 企业信息系统层处理企业信息的系统软件包括企业基础建设系统,例如企业资 源计划( e r r ) ,大型机事务处理;数据库系统和其它的遗留信息系统,例如j 2 e e 应用组件可能为了数据库连接需要访问企业信息系统。 j 2 e e 四层中的每一层都被物理地部署在不同的场地中,而且即使同在应用服 务器区域内,表示逻辑层和业务逻辑层也可以分开来,被安装在不同的服务器上。 在b s 结构中,典型的j 2 e e 层次结构,如图2 2 所示: 客户层 业务逻辑底层数据 咿_ = = _ f “。”j 飞 ,卜粥t 擎融粤,卜 、j , ,x m lh w e b 、 b 叫。一,i 服 ; 数 务! “ 据。 雕,一 。器 奄一 “己i j l 笙 库 渊1 e 了i 葶j p 、心l , :a p p l e t 一 i j 麓, , ,v 一7 、c l i e n t 昏,:, e j b 服务器 图2 - 2 典型的j 2 e e 层次结构 f i g u r e2 - 2t h et y p i c a lh i e r a r c h i c a ls t r u c t u r eo fj 2 e e j 2 e e 体系结构提供了中间层集成框架用来满足无需太多费用而又需要高可用 性、高可靠性以及可扩展性的应用的需求。j 2 e e 为搭建具有可伸缩性、灵活性、 易维护性的商务系统提供了良好的机制。 j 2 e e 多层体系结构的灵感来自模型视图控制器( m o d e lv i e wc o n t r o l l e rm v c ) 架构。m v c 模式是软件设计的典型结构,在这种设计结构下,一个复杂应用被分 解为模型、视图和控制器三部分,分别对应于业务逻辑和数据、用户界面、用户 请求处理和数据同步,三个部分各自负责相应的功能。 m v c 设计理念认为,在一个应用系统中,用户界面发生变动的可能性最大, 控制部分变动次之,而业务逻辑是最稳定的。因此为业务逻辑编写的代码不应该 7 北京交通大学硕士学位论文 和反映用户界面的代码混杂在一起,而是彼此应该尽可能地独立,用控制器来担 当两者交互的中介。基于m v c 设计方法,j 2 e e 体系结构很自然地将业务逻辑层 和表示逻辑层分开,控制器可置于其中任意一层,也可分置两层中。通过这种方 式,j 2 e e 的业务逻辑组件获得相当高的可重用性。 2 1 2m v c 开发模式 m v c 4 , 5 j 英文即m o d e l v i e w c o n t r o l l e r ,即把一个应用的输入、处理、输出流 程按照m o d e l 、v i e w 、c o n t r o l l e r 的方式进行分离,这样一个应用被分成三个层: 模型层( m o d e l ) 、视图层( v i e w ) 、控制层( c o n t r o l l e r ) 。 ( 1 ) 模型 模型主要通过封装j a v ab e a n 和e j b 来处理业务逻辑和访问数据,因此业务流 程和业务规则都属于模型部分。模型接受视图的请求数据,然后将处理的结果返 回给视图。在m v c 模式中,模型是应用的核心,它维护了业务的持久性,对开发 者而言,需要专注于业务模型的设计。通常,在定义模型时需要应用合适的设计 模式对业务逻辑进行封装,同时对业务流程中的对象进行合理抽象和封装,这一 过程也被称为数据建模。在数据集成应用中,数据建模是系统开发的一个重要环 节。 ( 2 ) 视图 视图用来表现用户界面,在j 2 e e 平台下主要使用h t m l 和j s p 来显示与用户 交互的界面。视图包括用户提交的表单信息以及所获得的返回结果信息。在基于 w e b 的应用系统中,视图元素通过浏览器展示给用户,这些视图元素可以是h t m l , 也可以是x m l 和a p p l e t 。随着应用复杂度和规模的增大,用户界面的处理也变得 更具有挑战性。在数据集成应用中,一类数据往往具有多种表现形式和显示的界 面。m v c 设计模式对视图的处理仅仅限于视图上数据的采集和处理以及接受用户 的请求,然后将用户的请求提交给控制器来处理。 ( 3 ) 控制器 控制器定义了应用程序的行为,是对整个应用程序流程的反映,视图提交的所 有请求都由控制器来处理。控制器的一个重要的功能,就是将用户请求传递给相 应的业务处理模型,它同时还负责选择视图并返回处理的结果。在m v c 模式中, 控制器是一个中介者的身份,以用户的请求为线,将模型和视图连接在一起,它 不作任何数据处理。构建基于m v c 的模型框架的核心就是设计有效的控制器。 模型、视图与控制器的分离,使得一个模型可以具有多个显示视图。如果用户 通过某个视图的控制器改变了模型的数据,所有其它依赖于这些数据的视图都应 相关技术理论研究 反映到这些变化。因此,无论何时发生了何种数据变化,控制器都会将变化通知 所有的视图,导致显示的更新,这实际上是一种模型变化的传播机制。模型、视 图、控制器三者之间的关系和各自的主要功能,如图2 3 所示。 模 型 封装应用程序状态 响虑状态查询 查询 应用程序功能 状态 通知视图改变 4 通知改变一。 改变 方法调用事件 - - - 图2 3m v c 设计模式 f i g u r e2 - 3m v cd e s i g np a t t e r n m v c 的处理过程,首先控制器接收用户的请求,并决定应该调用哪个模型来 进行处理,然后模型用业务逻辑来处理用户的请求并返回数据,最后控制器把模 型返回的数据通过表示层呈现给用户。 在w e b 开发中采用m v c 模式,这种设计模式把应用逻辑、处理过程和显示 逻辑分成不同的组件来实现,通过三者之间的分离达到层问的松散耦合,以实现 代码重用和易于修改,提高系统的灵活性、复用性和可维护性,适应了日益复杂 的w e b 应用系统的设计要求。图2 _ 4 显示了m v c 模式在j 2 e e 平台下的结构图。 转发 v a l l k p 。 图2 - 4j 2 e e 平台fm v c 模式的结构图 f i g u r e2 - 4t h es t r u c t u r eo fm v cp a t t e r nu n d e rj 2 e ep l a t f o r m m v c 设计模式被证明是有效的处理方法之一,它将模型、视图和控制器三部 9 北京交通大学硕士学位论文 分分离,采用该设计模式,简化了应用程序的设计,降低了各部分之间的耦合, 提高了灵活性和可维护性,降低了维护成本。m v c 模式的这种结构特别适用于那 些多用户的、可扩展的、可维护的和具有很高交互性的应用系统。 2 2 权限控制 权限控制系统主要是用来控制和管理系统用户对系统资源的访问,其目的是更 好地保护和使用企业的信息资源,提高企业信息系统的安全性。权限控制系统是 企业信息安全的重要组成部分,它负责对登录系统的用户进行身份认证以及对用 户所访问各种信息资源的操作进行控制。权限控制系统从企业信息系统出现地那 天起,就一直存在并发展至今。从最早的中央式集权管理模式下的权限系统,到 现在b s 下的基于角色访问控制系统,企业权限控制系统经历了不断地改进。目 前,由于企业信息系统的迅速普及以及各个企业内部信息管理的不同,企业信息 系统对权限控制系统在易用性、灵活性、安全性上的需求越来越高。因此,只有 一个数据访问性能高、使用简单、灵活的权限控制系统才能使企业信息化管理得 以很好的实旌。 2 2 1 访问控制技术 访问控南l j ( a c c e s sc o n t r 0 1 ) 就是通过某种途径显示的准许或限制访问能力及范 围的一种方法,其基本目标是防止非法用户进入和合法用户对系统资源的非法使 用。其实质是通过安全访问规则限制访问主体( 用户、进程、服务等) 对客体( 程序、 文件等) 的访问权限,从而使计算机系统在合法范围内使用。只有经过授权的用户 向系统正确提交并验证通过了自己的身份后,才允许访问特定的系统资源。访问 控制包括三个要素,即:主体、客体和控制策略。主体( s u b j e c 0 :是指一个提出请 求或要求的实体,是动作的发起者,但不一定是动作的执行者;客体( o b j e c t ) :是 接受其他实体访问的被动实体;控制策略:是主体对客体的操作行为集和约束条 件集。 简单讲,控制策略是主体对客体的访问规则集,这个规则集直接定义了主体对 客体的作用行为和客体对主体的条件约束。访问策略体现了一种授权行为,即客 体对主体的权限允许。 形式化的说,给定一个主体集s 、客体集o 以及对应于该客体集的访问操作集 r ,访问控制的授权操作实际上是通过确定如下的函数f 完成的: f s o 一2 r l o 相关技术理论研究 当授权结束时,每个主体对应于每个客体都将有一组操作许可,这样访问控制 际上可以通过检查请求的访问操作是否在这组操作许可里来实现。 2 2 2 传统访问控制策略 访问控制在准则中被分为两类:自主访问控s t ( d i s c r e t i o n a r ya c c e s sc o n t r o l , d a c ) 和强制访问控$ 1 ( m a n d a t o r ya c c e s sc o n t r o l ,m a c ) ,属于传统的访问控制策 略。 ( 1 ) 自主访问控制 自主访问控$ 1 j ( d a c ) 又叫任意访问控制,是一种允许主体对访问控制施加特定 限制的访问控制类型。其主要特征体现在:主体可以自主地把自己所拥有对客体 的访问权限授予其它主体或者从其它主体收回所授予的权限。这种访问控制类型 主要用于单级系统。访问控制的粒度是单个用户,访问控制能够为每个命名客体 指定命名用户和用户组,并规定他们对客体的访问模式。没有存取权的用户只允 许由授权用户指定对客体的访问权。 d a c 技术在一定程度上实现了权限隔离和资源保护,但在资源共享访问时难 以控制,为了便于资源共享,一些系统实现d a c 时,引入用户组的概念,以实现 组内的资源共享。d a c 有一个明显的缺点就是这种控制是自主的,它能够控制主 体对客体的直接访问,但不能控制主体对客体的间接访问( 如果a 可以访问b ,b 可 以访问c ,则a 就可以访问c ) ,用户间的关系不能在系统中体现出来,信息容易 泄露,这给信息系统带来了严重的安全问题。 ( 2 ) 强制访问控制 强制访问控制( m a c ) 是一种不允许主体干涉的访问控制类型,它是基于安全标 识和信息分级等信息敏感性的访问控制,通过无法回避的存取控制来防止各种直 接和间接的攻击。m a c 的主要特征体现在它是根据客体的敏感级和主体的许可级 来限制主体对客体的访问,主要应用在多级军用系统中。 强制访问控制的核心思想是在系统中设置多个安全等级,同时支持强制访问控 制。主体和客体都被赋予安全级别,安全级别包含两个元素:密级和范围。主体 的安全级别反映主体的可信度;客体的安全级别反映客体所含信息的敏感度。 强制访问控制的优点是管理集中,根据事先定义好的安全级别实现严格的权 限管理,因此适宜于对安全性要求较高的应用环境。但这种强制访问控制太严格, 实现工作量太大,管理不便,不适用于主体或客体经常更新的应用环境。 北京交通大学硕士学位论文 2 2 3 基于角色的访问控制 9 0 年代初美国国家标准化和技术委员会州i s t ) 提出了基于角色的访问控制方 法,在r b a c ( r o l e b a s e da c c e s sc o n t r 0 1 ) 6 , 7 , 8 d p ,用户皆被赋予适当的角色,而资 源的访问权限则是由所属的角色来决定,从而有效地克服了传统访问控制方法中 存在的不足之处。同时可以减少授权管理的复杂性,降低管理的开销,而且还能 为管理员提供一个比较好的实现安全策略的环境。图2 5 显示了基于角色的访问控 制和传统控制策略之间的关系。 图2 - 5 几种访问机制之间的关系 f i g u r e2 - 5t h er e l a t i o n s h i pb e t w e e ns e v e r a lm e c h a n i s m s 基于角色的访问控制的基本思想就是根据安全策略划分出不同的角色,资源访 问许可被封装在角色中,用户被指派到角色,用户通过角色间接地访问资源。其 核心思想就是将访问权限与角色相联系,通过给用户分配合适的角色,让用户再 与访问权限相联系。角色是根据企业内完成各种不同的任务需要而设置的,根据 用户在企业中的职权和责任来设定他们的角色。基于角色的策略实现了用户权限 和访问权限的逻辑分离,极大的方便了权限管理。 r b a c 核心模型是最基本的r b a c 模型( 如图2 6 ) ,它定义了r b a c 模型的基 本元素和各元素之间的关系,该模型支持角色访问控制的最小特权原则,体现了 最基本的角色控制思想。它也是一个完整的严格的数学模型,其中术语定义如下。 用户( u s e r ) :是一个访问计算机系统中的数据或者用数据表示的其它资源的主 体。用户一般情况下指人,也可为a g e n t 等智能程序,用u 表示全体用户的集合。 角色( r o l e ) :是指一个组织或任务中的工作或位置,代表了一种资格、权利和 1 2 相关技术理论研究 责任,用r 表示全体角色的集合。角色是一种语义综合体,可以是一种抽象概念, 也可以对应于具体应用领域内的职位和权利。 权限( p e r m i s s i o n ) :是对计算机系统中的数据或者用数据表示的其它资源进行 访问的许可,用p 表示全体权限的集合。权限一般是一种抽象概念,表示对于某 种客体资源的某种操作许可。因此有的模型中将权限细化为二元组( 操作,对象) , 其中对象是访问控制系统中的真正客体,操作是作用在该对象上的一种访问方式。 由于该二元组中操作一般是与具体的对象相关的,在今后的模型中认为权限是一 个语义统一体。 角色激活( r o l ea c t i v a t i o n ) :是指用户从被授权的角色中选择一组角色的过 程。用户访问的时候实际具有的角色只包含激活后的角色,未激活的角色在访问 中不起作用。相对于静态的角色授权来说,角色激活是一种动态的过程,提供了 相当的灵活性。 会话( s e s s i o n ) :表示一个用户和一个角色子集的映射关系,用户是一个静态概 念,会话则是一个动态概念,一次会话是用户的一个活跃进程,它代表用户与系 统进行交互。一个用户可建立多个会话,但一个会话只允许一个用户参与。用户 必须通过会话才能激活角色。 角色继承关系( r o l ei n h e r i t a n c e ) :是角色集r 中元素间的一种偏序关系,满 足 自反性:v 厂r , 反对称性:v 吒,r 2 r ,r 2r 、,2 r jj = r 2 传递性:v ,吃,吩r ,r 2n r 2 r 3j r 3 从语义上来说,两个角色r l r 2 是指前者比后者级别更高,具有更大的权力。 形式化的说,r l r 2 蕴含r 2 对应的权限指派r 1 也拥有,同时r l 对应的权限指派r 2 也拥有,即有 吒r 2jp e r m i s s i o n ( r 2 ) p e r m i s s i o n ( r i ) n 孤盯( ) 互u s e r ( r 2 ) 其中p e r m i s s i o n ( r ) 表示r 对应的权限集,u s e r ( r ) 表示r 对应的角色集。角色继 承关系允许存在各种形式,包括多重继承。在这个偏序的意义下,角色集合并不 一定存在最大角色和最小角色。 活跃角色集( a r s ) :用户在建立一个会话时就激活了用户授权角色集的某个子 集,这个子集被称为活跃角色集( a c t i v er o l es e t ) 。 用户分配( u s e r a s s i g n m e n t ,u a ) :根据用户在组织中的责任和能力被赋予对应 各个角色的成员。它是用户集u 到角色集r 的一种多对多的关系,即有u a _ c u r ,也称为角色授权( r o l ea u t h o r i z a t i o n ) 。( u ,r ) u a 表示用户u 拥有角色r 。从语 义上来讲就表示用户u 拥有角色r 所具有的权限。 北京交通大学硕士学位论文 权限分配( p e r m i s s i o n a s s i g n m e n t ,p a ) :指角色按其职责范围与一组操作权限 相关联,用户通过被指派的角色间接访问资源。进行权限分配时,应遵循最小特 权原则。权限分配是权限集p 到角色集r 的一种多对多的关系,即有p a _ p r , ( p ,r ) p a 表示权限p 被赋予角色r ,从语义上来讲就表示拥有角色r 的用户拥有 权限。 户分配 ( u a ) 权限分配 ( p a ) 图2 - 6 r b a c 核心模型 f i g u r e2 - 6c o r er b a c m o d e l r b a c 授权模型( 图2 7 ) 主要由三部分组成,即用户、角色和权限。通常情况 下,一个角色应被赋予一定的操作权限,这就使得角色和权限之间是多对多的关 系。系统的合法用户应被赋予一定的角色,一个用户可以同时被赋予多个角色, 不同的用户也可以拥有相同的角色,这就使得用户和角色之问也是多对多的关系。 为了有效地控制角色冲突,r b a c 模型利用了会话功能,即当一个用户被赋予多 个角色且这些角色又分属于不同会话组时,可以通过激活某一个会话,使用户只 能扮演该激活会话组中包含的角色,其它会话组包含的角色暂时禁用。限制机制 是角色授权与用户赋予角色等的约束。不同会话组时,可以通过激活某一个会话, 使用户只能扮演该激活会话组中包含的角色,其它会话组包含的角色暂时禁用。 限制机制是角色授权与用户赋予角色等的约束。 1 4 氛曝 相关技术理论研究 角色等级 ,、 , 、 等级 图2 7 r b a c 授权模型 f i g u r e2 - 7r b a c a u t h o r i z a t i o nm o d e l r b a c 基本原则: ( 1 ) 角色继承原则 r b a c 模型为了提高效率,避免权限的重复设置,引入“角色继承 的概念, 即角色在拥有自己的权限和属性时还可以继承其他角色的权限和属性。角色的继 承关系构成了角色的偏序层次关系结构,能够很自然地反映结构内部成员之间的 权力责任问题。 ( 2 ) 最小特权原则 在r b a c 中,根据最小特权原则的要求,依据企业组织内的规章制度、岗位 权责来设计拥有不同权限的角色,使其权限不超过它执行所需的权限。当一个主 体访问某个资源时,若该操作不在主体当前活跃角色的授权内时,本次访问将被 拒绝。 ( 3 ) 职责分离原则 职责分离分为静态和动态两种,在r b a c 中,职责分离是通过角色互斥机制 实现的。静态职责分离原则:只有当一个角色与用户所属的其他角色彼此不互斥 时,该角色才能授权给该用户,即管理员给用户授予角色时,互斥的角色不能同 时包含在某个用户的角色集中。动态职责分离原则:只有当一个角色与一个主体 北京交通大学硕士学位论文 的任何一个当前活跃角色都不互斥时,该角色才能成为该主体的另一个活跃角色。 即动态互斥的角色可以同时包含在某个用户的角色集中,但用户为某次会话选择 角色时不能同时激活一个以上的角色。 r b a c 模型的访问控制策略主要体现在三种关系上:用户和角色问的关系, 角色和权限间的关系以及角色问的关系,这三种关系决定了某个用户是否有权访 问某个资源。精确定义这些关系,可以实现复杂的访问控制策略。 首先,r b a c 是一种与策略无关的访问控制技术,它不局限于特定的安全策 略,几乎可以描述任何的安全策略,从而在不同的安全域之间进行安全操作。 其次,r b a c 实现了用户与访问资源的逻辑分离,具有较高的安全策略灵活 性和较低的管理负担。在安全管理方面的优势有以下两个方面: ( 1 ) 对权限控制的支持 在r b a c 模型中,整个访问控制分为两个部分:用户与角色相关联、角色与 权限相关联,从而实现了用户与权限的分离。在企业实际中,人员流动相对于岗 位职责的变化要频繁的多,采用传统的访问控制需要

温馨提示

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

评论

0/150

提交评论