(计算机软件与理论专业论文)工作流管理系统访问控制的研究.pdf_第1页
(计算机软件与理论专业论文)工作流管理系统访问控制的研究.pdf_第2页
(计算机软件与理论专业论文)工作流管理系统访问控制的研究.pdf_第3页
(计算机软件与理论专业论文)工作流管理系统访问控制的研究.pdf_第4页
(计算机软件与理论专业论文)工作流管理系统访问控制的研究.pdf_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

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

文档简介

山东师范大学硕士学位论文 工作流管理系统访问控制的研究 摘要 随着计算机和网络技术的广泛应用,工作流己经成为协调企业业务过程、增强 企业应变能力和竞争力的重要技术。工作流技术的研究正圈益受到人们的重视。然 而,相对于工作流技术而言工作流安全方面的研究则很缺乏,导致工作流管理系统 中存在着很多安全隐患,这严重制约了工作流管理系统在企业中的广泛应用。因此, 深入研究工作流管理系统的安全机制具有十分重要的意义。 在工作流安全服务中,访问控制技术是确保系统安全的一个重要手段。目前业界 己提出了多种访河控制技术,如囊主访姆控制( d 焱c ) 、强制访慧经铡( 激c ) 、基于角 色的访问控制( r b a c ) 和基于任务的访问控制( t b a c ) 等,但它们都不能很好的满足 工作流管理系统的访闻控制需求。本文基于当前工作流管理系统访问控制的研究现 状,提出了一种基于角色的工作流动态访问控制模型( r w d a c ) ,解决了基于角色的 访问控制中的动态适应性差和最小权限约束假象的问题。该模型应用于一个基于j 2 e e 的工霖流管理系统中,提高了系统的安全性和实用性。 本文首先介绍了工作流和工作流管理系统的相关概念,阐述了传统的访问控制 技术和当前工作流管理系统访闯控案l 的研究现状。针对工作流技术的特点,对各种 访问控制技术的应用进行了研究,分析了它们应用在工作流管理系统中的可能性和 局限性。 接着针对工作流管理系统的特点和实际应用的需求,提出了一种基于角色的工 作流动态访问控制模型,满足了工作流管理系统动态授权的需求。模型基于r b a c , 通过弓l 入任务的概念实现了授权流与工作流的霾步;提出了模型中的授权约束辘制 和授权规则,给出了一种解决私有权限问题的算法,并对访问控制中涉及的任务指 派策略进行了研究,提出了一种基于模糊综合评判的任务指派策略,有效地提高了 资源的利用率和工作流管理系统的执行效率。 然后提出了一个基于j 2 e e 的工作流管理系统,并在该系统中实现了基于角色 的工作流动态访问控制。给出了基于角色的工作流动态访阀控制的实现框架,详细 介绍了框架中各功能模块的实现方法,并给出了该访问控制在工作流管理系统中的 主要情景时序。最后,总结了本文所傲的工作,以及对今蓊工作的震望。 关键词:工作流;工作流管理系统;访问控制;r b a c 分类号:t p 3 0 9 山东师范大学硕士学位论文 s t u d yo nt h ea c c e s sc o n t r o ii n 、v o r l 【f l o wm a n a g e m e n ts y s t e m a l b s t r a c t w i t ht h ew i d eu s eo fc o m p u t e ra n dn e m o r k ,w o r k f l o wh a sb e c o m eac r i t i c a l t e c h n 0 1 0 9 yf o re n t e 印f i s e0 nc 0 0 r d i n a t i n g b u s i n e s sp r o c e s s ,e n h a n c i n gt h ea b i l i t i e so f m e e t i n ga ne m e r g e n c ya n do fc o m p e t i t i v ep o w e lw b r k n o wt e c h n o l o g yh a sb e i n gg a i n i n g c o m p r e h e n s i v ea t t e n t i o nr e c e n t l y h o w e v e r ,t h er e s e a r c ho fw o r k n o ws e c u r i t yi sl a c k i n g c o m p a r i n gw i t ht h er e s e a r c ho fw o r k f l o wt e c h n o l o g y b e c a u s eo ft h i sf a c t o r t h e r ea r e m a n yp o t e n t i a ls a f e t yp r o b l e m se x i s t i n gi nw o r k f l o wm a n a g e m e n ts y s t e m t h i ss e r i o u s l y l i m i t st h ew i d e ru s eo fw o r k n o wm a n a g e m e n ts y s t e m t h e r e f o r e ,i ti sv e r ys i g n i f i c a n tt o s t u d yt h es e c u r i t yi nw o r k n o wm a n a g e m e n ts y s t e m a c c e s sc o n t r o lt e c h n o l o g yi so n eo ft h em o s ti m p o r t a n tw o r k n o ws e c u r i t ys e r v i c e s v a r i o u sa c c e s sc o n t r o lt e c h n o l o g yh a v eb e e nr a i s e dn o w ,s u c ha sd i s c r e t i o n a r ya c c e s s c o n t r o l ( d a c ) 、m a n d a t o r ya c c e s sc o n t r o l ( m a c ) 、r o l eb a s e d a c c e s sc o n t r o l ( r b a c ) 、 1 a s kb a s e da c c e s sc o n t r o l ( t b a c ) a n de t c ,h o w e v e r ,n e i t h e ro ft h e mw o u l dc o m p l e t e l y m e e tt h en e e d so fa c c e s sc o n t r o li nw o r k n o wm a n a g e m e n ts y s t e m s t h i sp a p e rp r e s e n t sa r o l e - b a s e dw o r k n o wd y n a m i ca c c e s sc o n t r o lm o d e l ,n a m e da sr w d a c ,b a s e do nt h e c u h e n tr e s e a r c ho fa c c e s sc o n t r o li nw o r k n o wm a n a g e m e n ts y s t e m t h i sm o d e lo v e r c o m e s t h ew e a k n e s s e so ft h eb a dd y n a m i ca d o p t i o na n dt h ef a k ec o n s t r a i n to ft h el e a s tp r i v i l e g e i tc a ne n h a n c et h es e c u r i t ya n dp r a c t i c a b i l i t yo ft h ew o r k n o ws y s t e mb a s e do nj 2 e e f i r s t ,t h ep a p e ri n t r o d u c e sr e l e v a n tc o n c e p to fw o r k f l o wt e c h n o l o g ya n dw o r k f l o w m a n a g e m e n ts y s t e m , d i s c u s s e ss e v e r a lt r a d i t i o 彻la c c e s sc o n t r o lt e c h n o l o g ya n dt h e c u r r e n tr e s e a r c ho fa c c e s sc o n t r o li nw o r k n o wm a n a g e m e n ts y s t e m a c c o r d i n gt ot h e c h a r a c t e r i s t i c so fw o r k f l o wt e c h n o l o g y ,i td o e ss o m ew o r ko nt h ea p p l i c a t i o no fa c c e s s c o n t r o lt e c h n 0 1 0 9 ya n da n a l y z e st h ep o s s i b i l i t ya n dd r a w b a c kw h e na p p l y i n gt h e mt ot h e w o r k n o wm a n a g e m e n ts y s t e m t h e n ,t a k i n gt h ec h a r a c t e r i s t i c so fw o r k f l o wm a n a g e m e n ts y s t e ma n dt h er e q u i f e m e n t o fr e a la p p l i c a t i o ni n t oc o n s i d e r a t i o n ,t h ep a p e rp r e s e n t sar o l e - b a s e dw o r k n o wd y n a m i c a c c e s sc o n t r o lm o d e lw h i c hc a nm e e tt h en e e do fd y n a m i ca u t h o r i z a t i o ni nw o r l 【n o w m a n a g e m e n ts y s t e m b a s e do nt h er b a c ,i ti n t r o d u c e st h ec o n c e p to ft a s kt or e a l i z e s y n c h r o n i z a t i o nb e 帆e e na u t h o r i z a t i o nf l o wa n dw o r k f l o w i tp r e s e n t st h ea u t h o r i z a t i o n c o n s t r a i n tm e c h a n i s ma n da u t h o r i z a t i o nm l e ,a n dr a i s e san e wa r i t h m e t i ct or e s o l v et h e p r i v a t ep r i v i l e g ep r o b l e m t h ep a p e ra l s od o e ss o m ew o r ko nt a s ka s s i g n m e n ts t r a t e g y w h i c hi so n ee l e m e n to ft h ea c c e s sc o n t r o l ,a n dp f e s e n t sat a s ka s s i g l l m e n ts t r a t e g yb a s e d h 山东师范犬学硕士学位论文 o nf u z z ys y n t h e t i cj u d g m e n tm e t h o d r h eu t i l i z a t i o nr a t eo fi e s o u r c ea n de x e c u t i n g e f f i c i e n c yo fw o r k n o wm a 彻g e m e n ts y s t e ma f ei m p f o v e de f 艳c t i v e l y i nt h ef o l l o w i n g ,t h ep a p e rp f e s e n t saw o f k 蠡o wm a n a g e m e n ts y s t e mb a s e do nj 2 e e a n dr e a l i z e st h er w d a ci ni t t l l ep a p e ri n t r o d u c e st h ea c c e s sc 咖t f o la r c h i t e c t u r e ,a n d d e s e 翻) e s 法ef e a l i z a l i o 鼗a p p 猕a c ho fe a c h 纯珏c 重i o 魏a lm o d 珏l ei n 轰ea f c h i l e c 耋u 他i n & l a i l i ta l s oi n t r o d l l c e st h em a i ns e q u e n c e so ft h ea c c e s sc o n t r o li nt h ew o r k f l o wm a n a g e m e n t s y s l e m 。r n a l l y ,氇ep a p e fs u m 搬a 蠢z e si l sf e s e 醒c hw o f k 黼dp 翔s p e c l sf o ft 沁f u l u r e w o r k k e y w o r d s :w b r k f l o w ;w b f k f l o wm a n a g c m e n ls y s t e m ;a c c e s sc b n t f o l ;r b a c c l a s 鲑董主e a t i n :即3 0 9 l l l 独创声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的研 究成果。据我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人 已经发表或撰写过的研究成果,也不包含为获得( 注:如没有其 他需要特别声明的,本栏可空) 或其他教育机构的学位或证书使用过的材料。与我 一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示谢 意。 学位论文作者签名:别法 导师签字: 学位论文版权使用授权书 本学位论文作者完全了解堂撞有关保留、使用学位论文的规定,有权保留 并向国家有关部门或机构送交论文的复印件和磁盘,允许论文被查阅和借阅。本人 授权堂撞可以将学位论文的全部或部分内容编入有关数据库进行检索,可以采用 影印、缩印或扫描等复制手段保存、汇编学位论文。( 保密的学位论文在解密后适 用本授权书) 学位论文作者签名:狄宏 新签字:形涉 签字日期:2 0 0g 年r 月3 p 日签字日期:2 0 0 占年娟j 一日 山东师范大学硕士学位论文 1 。l 研究背景和意义 第一章绪论 工作流的概念起源于生产组织和办公自动化领域,它是针对e ! j 常工作中具有固 定程痔的活动两提出的一个概念,叠的是通过将工作分解成定义良好的任务、焦色, 按照一定的规则和过程来执行这些任务并对它们进行监控,达到提高办事效率、降 低生产成本、提高企业生产经慧管理水平和企业竞争力昀霹的。 工作流描述了组织机构复杂的业务处理过程,涉及到多个系统与多个用户之间 的交互操作以及多个复杂流程,不可能单纯依靠人工干预来进行管理,为此必须建 立工作流管理系统。工作流管理系统是支持企业经营过程高效执行并监控其执行过 程的计算机软件系统。根据工作流管理联盟的定义【1 j ,工作流管理系统是一个支持 流程定义、工作流建立、管理和监控的工具集。这些工具集非常适用于企业重组、 业务流程自动化,以及人工型和自动型业务流程。目前,工作流管理系统在人员密 集型的办公环境中得到了大量的使用,殴经对当今的信息系统产生了重大的影响。 工作流技术的研究正目益受到人们的重视。然而,相对于工作流技术而言工作流安 全方面的研究则很缺乏,导致工作流管理系统中存在着很多安全隐患,这严重制约 了工作流管理系统在企业中的广泛应用。因此,深入研究工作流管理系统的安全机 制具有十分重要的意义。 工作流管理联盟指定的工律流安全囊皮书【2 l 中将工作流安全服务分为认证、授 权、访问控制、审计、数据加密、数据完整性、防否认和安全管理八个方面,对工 作流管理系统应该具有的安全特性进行了统一定义。 ( 1 ) 认证( a u t h e n t i c a t i o n ) :确认连接用户的合法性,是系统对用户身份进行 鉴别以证明其为合法用户的过程。 ( 2 ) 授权( a 珏l h o f i z a l i 锄) :标识用户可能拥有熊各种系统功能,是系统将特 定权限授予某个合法用户的过程。 ( 3 ) 访问控制( a c c e s sc o 藏l f 0 1 ) :用户通过健们的标识以及相应的权限访问系 统的各种操作和数据,是系统对用户身份进行认证,再将其访问请求与用户授权信 息进行比较以决定是否允许用户的访问请求的过程。 ( 4 ) 审计( a h d i l ) :维护系统事件和操作的历史,用来鉴定感兴趣的事件和操 作,检查可能存在的安全隐患。 ,u i 表示一个用户。用户是完成任务实例的具体参与者, 山东师范大学硕士学位论文 用户可以是人,也可以是某个具体应用程序。 角色集r = 例i - 1 ,2 ,n ) ,r i 表示一个角色。角色是执行任务的权限集合,属于某 个角色的用户具有执行相应的任务的权限。 任务集t = t i ii _ 1 ,2 ,n ) ,t i 表示一个任务。任务是一个静态的概念,它是组成工 作流过程的最基本单元。任务可以由人来执行,也可以由工作流管理系统自动激活。 任务实例t i = t f i ii _ 1 ,2 ,n ) ,i 表示一个任务实例。任务实例是实际运行中的一项 任务,是任务的一次运行。一个任务可以运行多次,所以一个任务可以对应多个任务 实例,而一个任务实例只能是一个任务的运行,所以任务与任务实例之间是一对多的 映射关系。尽管在工作流运行过程中实际执行的是任务实例而非任务本身,但是由于 任务实例均是在工作流运行时从相应的任务中创建的,所以在系统管理阶段仍只需考 虑任务。 权限集p = p i i i = 1 ,2 ,n ) ,p i 表示一个权限。权限是对计算机系统中的一个或多个 数据对象进行某种方式访问的许可权。 会话集s = s i ii _ 1 ,2 ,n ) ,s i 表示一个会话。会话是用户与激活角色之间的映射。 一个用户可能被指定多个角色,但这些角色并不一定同时都起作用,而是要根据用户 在系统中的状态所承担的责任和权力来决定该激活哪些角色,通过会话,用户与激活 角色相关联。 定义2 ( 关系) 用户角色赋值关系u r :u r u r ,( u ,r ) u r 表示用户u 被分配给角色r 。 角色任务赋值关系i 汀:r t r t ,( f ,t ) r t 表示角色r 可执行任务t 。 任务权限赋值关系t p :仰t p ,( t ,p ) 口表示执行t 所需要的权限p 。 会话用户映射关系s u :s u s u ,( s ,u ) s u 表示会话s 与用户u 的从属关系。 角色任务实例赋值关系r i :r ic 】r t i ,( r ,t i ) r i ,表示角色r 与任务实例之间 多对多的分配关系,根据角色任务赋值关系和任务与任务实例之间的映射关系得到 角色可以执行的任务实例集,由t 和r t 决定。 任务实例- 权限赋值关系i p :i p i t p ,( t j ,p ) i p ,根据任务权限赋值关系以及 任务与任务实例之间的映射关系来确定具体的任务实例的权限集,由t 和t p 决定。 角色层次关系r h :r h r r ,是角色集合上的一个偏序层次关系,称为继承关 1 5 山东师范大学硕士学位论文 系,记为 - ,若( r 1 ,r 2 ) r 且r 1 - r 2 ,则r 1 拥有r 2 的所有权限。 任务与任务实例之间的映射关系i m :t 一2 1 1 ,并且满足条件:对任意t i ,t i t , i m ( 丑) ni m ( t j ) = f 2 j 当且仅当t i 而。 定义3 ( 函数) 用户一角色函数:u s e r s ( r i ) = u iu u ( u ,r i ) u r ) ,被赋予某角色的用户集合。 角色一用户函数:r o l e s ( u i ) = r iu i u ( u i ,r ) u r ) ,某用户所拥有的角色集合。 角色- 任务函数:r o l e s ( t i ) = r it i t ( r ,t i ) r t ,可执行某任务的角色集合。 任务- 角色函数:t a s k s ( r i ) = t | r i r ( r i ,t ) r t ) ,某角色所能执行的任务的集合。 任务一权限函数:p e n n i s s i o n s ( t i ) = 刊t j t ( t i ,p ) t p ) ,完成某任务所需要的权限。 会话一用户映射函数:u s e r s ( s i ) = u iu u 人( s i ,u ) s u ) ,与某会话相对应的用户。 会话- 角色映射函数:r o l e s ( s i ) = r ir r ( u s e r ( s i ) ,r ) u r ) ,某会话中用户激活的 角色集合。 具有层次关系的全局函数: m l e s h :u _ 2 r ,在具有角色继承关系时用户的扩展角色集合。具体函数描述为: r o l e s h ( u i ) = i ( 了r - 卜r ) 【r t r o l e s ( u i ) 】) 。 r o l e s h :t 一2 r ,在具有角色继承关系时能执行某任务的扩展角色集合。具体函 数描述为:m l e s h ( t i ) = r | ( jr - r ) 【r t r o l e s ( t i ) 】 。 r o l e s h :s _ 2 r ,在具有角色继承关系时会话的扩展角色集合。具体函数描述为: r o l e s h ( s i ) = r l ( jr t - r ) 【r - r o l e s ( s i ) 】) 。 t a s k s h :t 一2 t ,在具有角色继承关系时角色所能执行的扩展任务集合。具体函 数描述为:t a s k s h ( r i ) = t i ( jr _ 0 的r t 关联的任务加到上级角 色的具有公有权限的任务集中,而下级角色的私有权限则不能被继承。 该方案采用如下递归算法实现。 算法:求角色的具有公有权限的任务集和具有私有权限的任务集 输入参数:角色名r n a m e ,角色直接授权的具有公有权限的任务集t 1 ,角色 直接授权的具有私有权限的任务集t 2 。 输出结果:角色实际能执行的具有公有权限的任务集t l ,角色实际能执行的具 有私有权限的任务集t 2 。 过程: ( 1 ) 用该算法求出其全部子角色的具有公有权限和具有私有权限的任务集; ( 2 ) 对每个子角色的标志位f 0 的角色一任务关系r t 进行处理: 1 ) 将标志位f 减1 ; 2 ) 如果f 0 ,把r t 关联的任务加入到t 1 中; 3 ) 如果f = 0 ,把r t 关联的任务加入到t 2 中; ( 3 ) 合并t 1 和t 2 中相同的任务; ( 4 ) 输出t 1 、t 2 。 可以看到,该算法既能有效的解决了私有权限问题,又避免了过大的系统开销。 3 5 任务指派 3 5 1 任务指派策略 任务指派策略是工作流管理系统根据u r 关系、r t 关系以及授权约束从所有 用户集中筛选出可执行当前任务实例的用户集,并将该任务实例分配给这个用户集 中具体的某个用户时所采取的方式。本文在访问控制模型中加入任务指派策略,在 保证只有经过授权的人员才能执行任务的同时,促进了人力资源的最优分配。 常见的任务指派策略主要有以下几种: ( 1 ) 铷l :将任务分配给所有的符合授权约束条件的用户。当任务实例需要多人 同时执行的时候可以采用这种指派策略。 ( 2 ) f a f e :先来先分配。这种情况下需要系统先通知有权执行该任务的所有用 户,然后等待用户请求做这个任务,谁先来申请就由谁先做。 ( 3 ) r a n d o m :任务将随机分配给满足授权约束条件的某个用户。 ( 4 ) r o u n d r o b i n :轮转法,任务分配给携有轮转令牌的用户。 山东师范大学硕士学位论文 目前,任务指派策略方面的研究不是很多,但是任务指派策略的实施对提高企 业的整体效率有着不可估量的影响,它使工作流管理系统真j 下做到将任务分配给最 佳的人选,使访问控制更好的为工作流服务。本文在这方面进行了研究,提出了一 种基于模糊综合评判的任务指派策略模糊综合评判指派策略( f u z z ys y n t h e t i c j u ( 1 舯e n t ,f s j ) 。 3 5 2 模糊综合评判指派策略 模糊综合评判指派策略是运用模糊综合评判法【3 8 3 9 柏j ,从能够扮演该角色的多 个用户中选择最佳用户,使工作流在最短时间内顺利完成,从而更有效的为任务选 择最佳执行者,提高工作流管理系统的整体运行效率。 模糊综合评判指派策略的基本步骤如下: ( 1 ) 建立用户评价因素集x = x 1 ,x 2 ,x m ) ,其中x i 为第i 项评价因素; ( 2 ) 建立评判集己k u 1 ,u 2 ,u 。) ,其中u i 为第j 个评判用户; ( 3 ) 单因素评判,得出单因素评判矩阵; ( 4 ) 综合评判,得到最优执行者。 下面以某一稿件审批流程为例,来详细介绍模糊综合评判指派策略。 某一稿件审批流程由5 个任务组成:拟稿、审稿、核稿、送稿和稿件签发;用 户为5 人:a 、b 、c 、d 、e ;角色分为3 类:一般员工、科长和处长;角色的层 次关系为处长支配科长,科长支配一般员工;5 个用户的角色分别为:a 、b 、c 是 一般员工,d 是科长,e 是处长。授权约束如下:( 1 ) 一般员工只能进行拟稿和送稿 任务;( 2 ) 审稿、核稿任务只能由科长或处长处理;( 3 ) 稿件签发必须由处长来完成; ( 4 ) 拟稿和送稿是绑定任务,必须由同一用户来执行;( 5 ) 拟稿和审稿是冲突任务, 审稿和核稿是冲突任务,送稿和稿件签发是冲突任务,同一用户不能执行冲突的任 务。图3 2 即为该稿件审批流程图。 图3 2 稿件审批流程 上述稿件审批流程用基于角色的工作流动态访问控制模型描述如下:t = t 1 ,t 2 ,b , t 4 ,t 5 ) ,t 1 、t 2 、t 3 、t 4 、t 5 分别是拟稿、审稿、核稿、送稿和稿件签发;u = u l ,u 2 ,u 3 ,1 1 4 , u 5 ) ,u 1 、u 2 、u 3 、u 4 、u 5 分别是用户a 、b 、c 、d 、e ;r = r l ,r 2 ,r 3 ) ,r 1 、r 2 、r 3 分别是 一般员工、科长、处长;p = ( 拟写,稿件) ,( 审查,稿件) ,( 核对,稿件) ,( 递送,稿 件) ,( 签发,稿件) ) ;r h = 处长 - 科长 _ 一般员工) 。根据授权约束,用户角色关系 u r = ( u 1 ,r 1 ) ,( u 2 ,r 1 ) ,( u 3 ,r 1 ) ,( u 4 ,r 2 ) ,( u 5 ,r 3 ) ) ,角色- 任务关系r t = ( r l ,t 1 ) ,( r 1 u ,( r 2 ,t 2 ) , ( r 2 ,t 3 ) ,( r 3 ,t 5 ) ) ,任务一权限关系t p = ( t l ,p 1 ) ,( t 2 ,p 2 ) ,( t 3 ,p 3 ) ,m ,p 4 ) ,( t 5 ,p 5 ) ) 。 2 1 山东师范大学硕士学位论文 工作流开始执行拟稿任务,该任务可以由用户a 、b 、c 执行,所以需要对这3 个 用户进行综合评价,选出最佳执行者,以提高工作流执行效率。假设用户评价指标为: 学历、技能、信任度、历史完成任务质量、办事效率,各因素的权重分别为o 0 5 ,0 2 , 0 3 5 ,0 1 5 ,0 2 5 ,其评价等级如表3 1 所示。根据部门负责人打分,a 、b 和c 的指标 情况如表3 2 所示。 表3 1 评价等级 评分项目 分数 学历技能信任度完成质量办事效率 5研究生非常好非常信任非常高 非常高 4 大学好信任商葡 3 高中较好较信任较高较高 2 初中一般一般一般一般 1小学差差差差 表3 2 部门负责人打分 用户a bc 学历 132 技能 351 信任度 243 完成质量 24l 办事效率 352 ( 1 ) 设用户评价因素集x = x 1 ,x 2 ,x 3 ,x 4 ,x 5 】,其中x l 为学历,x 2 为技能,x 3 为信任 度,x 4 为任务完成质量,x 5 为办事效率。这五项因素的权重a = ( 0 0 5 ,0 2 ,o 3 5 ,o 1 5 , 0 2 5 ) 。 ( 2 ) 评判集皓 u 1 ,u 2 ,u 3 】- ,其中u l 为用户a ,u 2 为用户b ,u 3 为用户c 。 ( 3 ) 单因素评判。因素与用户之间的关系可通过建立隶属函数,用模糊关系矩阵 r = ( r i ) 5 x 3 表示。假设建立五项因素的隶属函数均为 c o ) = 1 ,z f25 碧,1 c 0 兀f l ic l 【m a n a a er _ 。- - - - - 。_ 。_ v ,- ,_ v - - - ,v ,- ,_ v - - 。- ,_ _ - v ,- ,:_ 。一 b h e c k sc 1 0 l c h e c k s 殴0 辱c h e c k s 0 喝h e c k sd 蚰 屯h e c k sc 5 0 c h e c k d c l 0 h e c k d 瞳0 喝_ c h e c k d 0 唪c h e c k d 0 4 0 b h e c k d 0 5 0 e n t 把v b e a n ) i 璺曼! 垦旦型! 盟 塾c i d :s t n g 塾茁k j d :s 们n g j b 自s k h :u 或 s e s s i o n b e a n c 0 n l i c i d e n e 卧h y b e a n r o i e c0 n 俩d 琢而丽i 广 冬知i e h :s t n n g j 阶m i e h :u s t e m 时b e a n u s e 屹0 n 埘d 邑;u c h :s 们n g 釉s e 州:s t n n g c u s e 州:l j 武 e m 盯b e a n ) per n i s s b 八c o r 删d 霸试f 丽丽 多9 e r n l h :s 们n g 2 铳d e 丌n h :u 负。 图4 6 约束管理模块类图 约束管理模块主要涉及到七个类,分别为约束管理类c o n n i c t m a n a g e r 、约束定 义类c o n m c t d e f i n e 、冲突任务类t a s k c o n n i c t 、冲突角色类r o l e c o n m c t 、冲突用户 类u s e r c o n f l i c t 、冲突权限类p e 姗i s s i o n c o n n i c t 、绑定任务类b i nd ,r a s k s 。其中,约 一一咖茹批 一一一一一一一加 d e p 鼎d e p g 一 恸训釉哪仰鲥种哪碡 山东师范大学硕士学位论文 束管理类与约束定义类为会话b e a n ,其余五个类为实体b e a n ,分别对应者安全数 据库中的冲突任务表、冲突角色表、冲突用户表、冲突权限表以及绑定任务表。 约束定义类提供对外定义约束的操作接口,系统安全管理员通过模块提供的约 束定义w 曲界面( 约束定义) 来维护冲突角色、冲突用户、冲突任务、冲突权限以 及绑定任务等约束配麓信息,具体定义的操作包括对冲突焦色、冲突用户、冲突镁 务、冲突权限以及绑定任务的增加、删除、更新等。约束管理类提供对各种约束检 测请求的服务接口,接受来自权限管理模块、组织管理模块以及安全管理模块的约 束检测请求,并负责对各约束检测请求进行处理,将约束处理的最终结果反馈给约 束检测请求的发起者。 为了更清晰的描述约束处理过程,以下分别以一个静态约束检测方法和一个动 态约束检测方法为例来加以说明,其余的检测方法与此类似。 ( 堇) 同一任务不能被分配冲突权限( s c 圭) 。 权限管理模块在权限定义人员定义任务一权限分配时发出冲突检测请求,约束管 理模块接受到该约束请求后通过调用静态约束检测方法c h e c k s c l ( s t f i n gp e f l n i d , s t r i n gt a s l ( e d ) 对该约束进行检测。c h e c k s c l ( ) 方法首先得到与p e 姗i d 冲突的所有的 权限集,再由权限管理类的任务权限分配关系得到t a s k l d 已分配的所有权限集,然 后遍历任务躺k l d 的权限集同冲突权限集进幸亍交集运算,如果所得交集中权限的个 数大于或等于1 ,则表明该分配存在冲突,不能将权限p e 姗i d 分配给t a s k i d ;如果 交集中权限的个数为o 则表明该分配合法,可以进行此分配。该检测过程的实现代 码如下: p u b l i cc l a s sc o n f l i c t m a n a g e r c o n f l i c l d e f i n ec o n n i c t d e f i n e = n e wc o n f l i c l d e f i n e ( ) ;约束定义类对象 p e 瑚i s s i o n m a n a g e rp e n l l i s s i o n m a n a g e r = n e wp e 加i s s i o n m a n a g e r ( ) ;力极限管理 类对象 p u b l i ci n tc h e c k s c l ( s t r i n gp e n l l l d ,s t r i n gt a s k l d ) 7 辜静态约束s c 熏方法,传入参数分别为当魏任务标识l a s l 【l d ,任务将被分配 的权限标识p e 肌i d 幸 a j l r a y l i s tc p l i s t = c o n f l i c t d e 6 n e 。g e l a l l p e f l l l i s s i o n c o n f l i c t ( p e 舯l d ) ; 崩嫠过与约束定义对象类交互得到与当前权限冲突的新有权限集 a - r r a y l i s tt p l i s t = p e n n i s s i o n m a n a g e r g e t a j l p e r m b y l l a s k ( t a s k l d ) ; 影通过与权限管理类对象交互得到当前任务已分配的所有权限集 奉取两个权限集的交集,若交集中权限的个数大于或等于1 ,返回整数1 , 表明存在冲突;若交集中权限的个数为o 则表明不存在冲突,此分配合法 可以进行。通过重载p e 锄i s s i o n 的e q u a l s ( ) 方法,比较两权限集中的权限 的标识是否相同:c 3 3 山东师范大学硕士学位论文 f b r ( i n ti = o ;i t p l i s t s i z e ( ) ;i + + ) i f ( c p l i s t c o n t a i n s ( t p l i s t g e t ( i ) ) r e t u ml ;) r e t u m0 ; ) ( 2 ) 在一个过程实例中,同一用户不能完成冲突任务的实例( d c 2 ) 。 在一个工作流过程实例执行过程中,安全管理模块在为任务分配具体的执行用 户时对约束管理模块提出约束检测请求。约束管理类通过调用动态约束检测方法 c h e c k d c 2 ( s t r i n gp r o c e s s i n s t a n t s i d ,s t r i n gt a s k i d ,l i s tu s ) 对该约束进行检测。 c h e c k d c 2 ( ) 方法首先从授权历史库中得到同一过程实例中所有已执行的任务集t l , 求出与当前任务t a s k i d 相冲突的任务集t 2 ,取两个任务集的交集得到同一过程实例 中与任务t a s k i d 相冲突的任务集,再从授权历史库中得到执行这些任务的用户集 u s e r ,并将u s e r 从候选用户集u s 中删除,最后得到满足动态约束条件的能够执行该 任务的候选用户集。该检测过程的实现代码如下: p u b l i cl i s tc h e c k d c 2 ( s t “n gp r o c e s s i n s t a n t s i d ,s t r i n gt a s k i d ,l i s tu s ) :c 传入参数分别为过程实例标识p r o c e s s i n s t a n t s i d ,任务实例标识t a s k i d ,候选 用户集u s 木 a h a y l i s tt a s k l i s t = a u t h o r i z a t i o n h i s t o r y g e t u 1 7 i a s k b y p i i d ( p r o c e s s i n s t a n t s i d ) ; 从授权历史库中获得该过程实例所有的已执行的任务集 a j r a y l i s tc t l i s t = c o n f l i c t d e f l n e g e t a n i a s k c o n n i c t ( t a s k i d ) ; 通过与约束定义对象类交互得到与当前任务冲突的任务集 宰取任务集t a s k l i s t 与c t l i s t 的交集,得到同一过程实例中与任务t a s k i d 冲突 的任务集,通过查询授权历史库得到执行这些任务的用户集,将他们从候选 用户集u s 中删除,得到最终的满足约束要求的用户集木 f 6 r ( i n ti = o ;i t a s k l i s t s i z e ( ) ;i + + ) i f ( c t l i s t c o n t a i n s ( t a s k l i s t g e t ( i ) ) u s e ru s e r = a u t h o r i z a t i o n h i s t o r y g e t u s e f b y l a s k i d ( t a s k l i s t g e t ( i ) g e t r a s k i d ( ) ) ; u s r e m o v e ( u s e r ) ; h r e t u mu s ; 返回满足约束要求的用户集 所有的约束检测都是通过调用约束管理类相应的检测方法来实现,它的接口 c h e c k s c 卜c h e c k s c 5 分别对应了r w b a c 模型中的五条静态约束规则,接口 c h e c k d c 卜c h e c k d c 5 分别对应了五条动态约束规则。 l l j 东师范大学硕士学位论文 4 2 5 任务指派管理模块 任务指派管理模块与安全管理模块交互,对满足约束条件的用户集再次进行筛 选,从而得出最终的候选用户集。该模块所涉及到的u m l 类图如下图所示: 图4 7 任务指派管理模块类图 任务指派管理模块采用简单工厂模式,主要涉及两个类和一个接口:任务指派 管理类t a s k a s s i g i l m a n a g e r 、任务指派策略类n 奸o l i c y 和任务指派策略接口 t a s l 汰s s i g l l m e n t p o l i c y 。任务指派管理类作为任务指派策略类的工厂,负责与安全管 理模块进行交互,根据安全管理模块提出的任务指派策略要求,产生相应的任务指 派策略类。在基于角色的工作流动态访问控制中使用了五种任务指派策略,分别为: 越l 、& f e 、r a 魏d o m 、酗毽n d m b i 珏、琢 ,这五种指派策略类都必须实现任务指派策 略接口的a p p l y ( ) 方法,通过该方法来具体的对候选用户集进行筛选操作。这里使 用到j a v a 中的反射机制,任务指派策略接口根据安全管理模块传入的指派策略名 t a p n a m e ,通过任务指派管理类的f i n d s t r a t e g y ( ) 方法,从安全数据库中找到对应该 指派策略的类名c l a s s n a m e ,通过j

温馨提示

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

评论

0/150

提交评论