薄 陽 夏春和,3
1(網絡技術北京市重點實驗室(北京航空航天大學) 北京 100191) 2(北京航空航天大學計算機學院 北京 100191) 3(廣西師范大學計算機科學與信息工程學院 廣西桂林 510004) (cseby@buaa.edu.cn)
2017-06-05;
2017-07-29
國家自然科學基金聯合基金項目(U1636208);中航工業產學研項目(CXY2011BH07) This work was supported by the Joint Funds of National Natural Science Foundation of China (U1636208) and the Special Project on the Integration of Industry, Education and Research of the Aviation Industry Corporation of China (CXY2011BH07).
業務流程授權約束依從性分析
薄 陽1,2夏春和1,2,3
1(網絡技術北京市重點實驗室(北京航空航天大學) 北京 100191)2(北京航空航天大學計算機學院 北京 100191)3(廣西師范大學計算機科學與信息工程學院 廣西桂林 510004) (cseby@buaa.edu.cn)
授權約束的依從性研究是業務流程安全領域中的重要研究內容.針對授權約束提出了全新的業務流程依從性分析框架,該框架可以處理:1)流程授權和非流程授權;2)業務流程任務委托;3)角色繼承關系;4)職責分離和職責綁定約束;5)靜態約束和動態約束.提出授權圖表示依從性分析框架,并給出授權圖的構造和化簡方法對授權圖進行維護,然后設計了針對授權圖的依從性分析算法.基于分析結果,給出了不依從授權約束的沖突模式,針對每一種沖突模式設計一組解決方案,并實現了原型系統.所提出的授權約束依從性分析框架獨立于系統部署的平臺,適用范圍廣泛.最后通過實例分析和實驗驗證說明了該方法的有效性.
業務流程;授權約束;依從性;職責分離;職責綁定;任務委托
業務流程是指為特定用戶提供特定服務或者產品的一組相關的結構化的任務.為了保證這些服務和產品是用戶所需要的,業務流程經常要依從于業務規則和策略,這些業務規則和策略被稱之為依從性要求[1].本文主要關注依從性要求中的一類:授權約束[2-4].為了避免業務流程中權限濫用、誤用和欺騙等情況的發生,從而會對組織機構造成損害,授權約束規定業務流程中的任務必須由系統指定的角色和用戶來完成.業務流程授權約束依從性分析是判斷業務流程中用戶、角色和任務獲取的權限是否依從于授權約束規定的過程.
業務流程生命周期包括流程設計和流程執行階段.在流程設計階段,流程專家對業務過程建模,并指定可以執行任務的角色以及完成任務需要的權限;在流程執行階段,業務管理員為每個任務分配一個候選用戶.由于系統當前狀態和候選用戶分配策略的不同,對于相同的業務流程模型經??梢缘玫讲煌娜蝿辗峙?因此,業務流程中授權約束的依從性分析既要分析業務流程模型的依從性,還要分析任務分配的依從性.同時,為了確保以用戶為中心的業務管理并支持跨組織的協作[5],業務流程中候選用戶經常需要將分配給他的任務委托給其他用戶去執行,即任務委托.任務委托為用戶獲取權限提供了隱蔽通道.在依從性分析過程中必須予以考慮.
在業務流程環境中,為了滿足企業的訪問控制靈活多變以及主動和被動訪問并存的需求,基于任務-角色的訪問控制模型(task-role based access control, TRBAC)[6]得到了大量關注和應用.在TRBAC中,角色不會直接獲取權限而是通過其分配的任務獲取相應的權限.為了能夠支持主動和被動2種訪問需求,TRBAC中將任務進行了分類,簡單來說分為流程任務和非流程任務.非流程任務是角色固有的任務,通過非流程任務獲取的權限是被動權限;而流程任務是在業務流程生命周期分配給角色去執行的任務,是隨著時間的變化而變化的,用戶通過流程任務而獲取的權限是主動權限.由于用戶可能通過上述2種途徑獲取權限,因此,基于TRBAC的授權約束依從性分析除了考慮用戶通過流程中的任務獲取的動態權限,還需要考慮用戶通過非流程任務獲取的固有權限.
目前研究集中于主動訪問或者被動訪問的授權約束分析,為了能夠分析TRBAC中主動訪問和被動訪問相結合的訪問方式的依從性,本文提出了一種全新的依從性分析框架,該框架具有4個特點:
1) 該框架充分考慮了用戶獲取權限的3種途徑和2種方式,用戶獲取權限的3種途分別為通過角色和任務獲取權限、通過角色繼承關系獲取權限以及通過委托機制獲取權限,用戶獲取權限的2種方式為主動獲取和被動獲取;
2) 提出授權圖描述所提出的授權約束依從性分析框架,授權圖易于構造和維護,授權圖的依從性分析可以轉換為對有向圖的操作,提高了分析效率;
3) 提出的框架能夠在業務流程設計和業務流程執行過程中發現違反授權約束的沖突,并且給出沖突模式和解決方案,為權限再次分配調整提供了依據;
4) 提出的授權約束依從性分析框架既考慮了業務流程環境中訪問控制的特點,又考慮了業務流程執行過程中委托機制帶來的權限變化情況,并獨立于系統部署平臺,具有廣泛的適用范圍.
1.1授權約束
在業務流程管理系統中,授權約束作為保證流程完整性以及差錯控制和欺騙預防的機制而存在.為了避免業務流程中權限濫用、誤用和欺騙等情況的發生,從而對組織機構造成損害,授權約束規定業務流程中的任務必須由系統指定的角色和用戶來完成.授權約束是基于具有約束關系的實體而制定的[7].本文認為在TRBAC中這種具有約束關系的實體是權限.換言之,用戶通過角色和任務等最終獲取了對目標資源操作的權限是授權約束針對的對象,也是產生安全威脅的根本.典型的授權約束包括職責分離約束(separation of duty, SoD)和職責綁定約束(binding of duty, BoD).簡單來講,職責分離約束是指2個權限不能夠分配給同一個用戶;而職責綁定約束是指2個權限必須分配給同一個用戶.職責分離約束反映了責任和權力必須分配給不同用戶的需求[8],而職責綁定約束反映了機密數據只能夠由少數人訪問的需求.我們稱具有職責分離關系的2個權限為互斥權限,具有職責綁定關系的2個權限為綁定權限.
職責分離約束和職責綁定約束在業務流程的設計階段和運行階段具有不同的含義.在設計階段,職責分離約束是防止互斥權限分配給相同的任務、角色和用戶.而職責綁定約束是指綁定權限能夠分配給相同的任務、角色和用戶.在運行階段,職責分離約束是防止在一個流程實例中互斥權限被分配給同一個用戶,而職責綁定約束是指綁定權限必須成對分配給同一個用戶.
1.2TRBAC
不同于RBAC,在TRBAC中,用戶通過角色獲取任務的執行權限,通過任務獲取資源的操作權限,文獻[6]給出了TRBAC的基本結構,如圖1所示:

Fig. 1 TRBAC model圖1 基于任務角色的訪問控制模型
容易理解,TRBAC中實體“任務”是區別于RBAC的關鍵.任務不僅僅是“子角色”,還有獨有的含義和特點.根據是否屬于業務流程還是不屬于業務流程可以將任務分為流程任務和非流程任務.根據組織機構的結構和授權的繼承關系可以分為可繼承任務和不可繼承任務.因此,結合上述2種分類方式可以將任務分為4種類型:不可繼承非流程任務(P)、可繼承非流程任務(S)、不可繼承流程任務(W)和可繼承流程任務(A).子角色能夠通過繼承關系獲取可繼承任務的執行權限,而不可繼承任務的執行權限不能夠被繼承.非流程任務的授權在業務流程設計和執行階段是不變,而流程任務在設計階段存在多個候選執行角色和用戶,在執行階段只存在一個執行用戶.TRBAC深入考慮了企業環境的特點和訪問控制的需求,更適用于真實情況.本文的研究是在TRBAC的基礎上展開的.
1.3業務流程任務委托
委托是業務流程系統以及其他很多應用領域的重要概念[9-10].傳統的委托是指允許用戶將其權限的一部分分配給其他不具有這些權限用戶的機制[11].發起委托的用戶稱為委托人,接受委托的用戶稱為被委托人.在業務流程環境中委托是指委托人能夠授權被委托人執行業務流程中的任務[10].一般來講,任務委托可以分為2類:授予(grant)和轉移(transfer)[10,12].授予型委托是指委托成功實施后,委托人和被委托均具有任務的執行權限;而轉移型委托是指委托成功實施后任務執行權限從委托人轉移到被委托人.委托的本質是任務執行權限在用戶之間復制和轉移的過程.因此,任務委托提高了授權管理的靈活性.但是,由于用戶發起任務委托以及被委托任務存在不確定性,對系統授權狀態也帶來了不確定的變化,容易引發潛在的安全問題.委托與授權約束之間固有的復雜性成為業務流程委托過程需要解決的重要問題[13].
授權約束的依從性是指用戶通過訪問控制策略和委托機制獲取的權限是否依從于授權約束的規定.本文授權約束主要指職責分離約束和職責綁定約束.職責分離約束是指需要多名用戶來完成一項工作[14].Ferraiolo將職責分離定義為:對于指定的業務集合,不允許同一個人執行該集合中的所有業務[15].Botha在業務流程環境中討討論職責分離,定義了可能的沖突、沖突用戶、沖突角色、沖突任務和沖突權限等[16].在Botha的定義中,除了沖突用戶表示的是具有某種社會關系(例如夫妻、父子等家庭關系)的用戶以外,沖突角色、沖突任務都是由于角色和任務具有沖突權限而產生的.因此,本文認為沖突權限是授權約束中的基本約束.Wolter針對工作流模式討論了授權約束,他認為職責綁定約束是指2個任務必須由同一個用戶來執行,職責綁定約束反映了如機密數據只能被一小部分用戶訪問的需求[7].
本文沿用了Botha,Wolter等人的定義,并進一步將權限約束從約束雙方的角度進行了劃分,分為固有權限約束、固有權限與主動權限約束以及主動權限約束.業務流程包括設計階段和執行階段,相應的這2個階段的主動權限可以分為靜態主動權限和動態主動權限,具體地,在業務流程模型中用戶能夠獲取的權限稱為靜態主動權限,在業務流程任務分配中用戶能夠獲取的權限稱為動態主動權限.由于靜態主動權限和動態主動權限具有不同的特點,因此,在分析授權約束依從性時要分別處理.根據業務流程生命周期和獲取權限的特點,我們將授權約束依從性分析框架劃分為2個階段,即業務流程模型依從性分析框架和任務分配依從性分析框架.
2.1業務流程模型依從性分析框架
業務流程模型依從性分析框架可以分析固有權限之間、固有權限和靜態主動權限之間以及靜態主動權限之間的約束.依從性分析框架是由約束(constraint)、任務(task)、組織(organization)、主動訪問(active access)以及被動訪問(passive access)等5部分構成.
約束是指權限以及權限之間的約束關系.權限指主體對客體的操作.約束關系包括職責分離關系、職責綁定關系.任務是一個基本工作單元,與權限相關聯,任務具有權限后可以對目標資源進行操作.一個任務既可以是為了實現業務目標而設計(流程任務),也可以是為了實現系統的特定功能而設計(非流程任務).任務分為人工任務和非人工任務(更新數據庫、自動發送郵件等).在業務流程中,一個人工任務分配給一個用戶來完成[16].非人工任務不在本文研究范圍之內.組織是指系統中的角色以及角色之間的繼承關系.主動訪問是指用戶通過角色獲取流程任務的執行權限.被動訪問是指用戶通過角色獲取非流程任務的執行權限.
令P={permission}表示權限集合,T={task,taskType}表示任務集合,taskType∈{P,S,W,A},Tbp表示流程任務,Tnbp表示非流程任務,則T=Tbp∪Tnbp,且Tbp∩Tnbp=?(如果存在既屬于流程任務集合又屬于非流程任務集合的任務,那么具有非流程任務執行權限的用戶可以在流程生命周期的任何時刻來執行該任務,威脅流程正常執行).R={role}表示角色集合,Rbp表示主動角色,Rnbp表示被動角色,R=Rbp∪Rnbp,主動角色能夠執行流程任務,而被動角色能夠執行非流程任務.需要注意到是一個角色可以同時成為主動角色和被動角色.U={user}表示用戶集合.我們將業務流程模型依從性分析框架(business process model compliance analysis framework,BPMCAF)記為
BPMCAF∷=(CONST,TASK,ORG,AA,PA),
CONST∷=(P,PPC)表示權限以及權限之間的約束關系.其中,P表示權限集合;PPC={p1,p2,constType},p1,p2∈P,constType∈{BoD,SoD}表示權限與權限之間的約束關系.
TASK∷=(T,P,TP)表示任務、權限以及任務和權限之間的分配關系.其中,T表示任務集合;P表示權限集合;TP={task,permission},task∈T,permission∈P表示權限與任務之間的分配關系.
ORG∷=(R,RR)表示系統中的角色以及角色之間的繼承關系.其中,R表示角色集合;RR={r1,r2},r1,r2∈R,表示角色之間的繼承關系,其中r1為父角色,r2為子角色.
AA∷=(Tbp,Rbp,Ubp,TRbp,URbp)表示流程任務、角色、用戶及其分配關系.其中,Tbp∈T,表示流程任務集合;Rbp?R,表示與流程任務有關的角色集合;Ubp?U,表示與Rbp有關的用戶集合;TRbp={task,role},task∈Tbp,role∈Rbp表示流程任務和角色之間的分配關系;URbp={user,role},user∈Ubp,role∈Rbp表示用戶和角色之間的分配關系.
PA∷=(Tnbp,Rnbp,Unbp,TRnbp,URnbp)表示非流程任務、角色、用戶及其分配關系.其中,Tnbp∈T,表示非流程任務集合;Rnbp屬于R表示與非流程任務有關的角色集合;Unbp屬于U表示與Rnbp有關的用戶集合;TRnbp={task,role},task∈Tnbp,role∈Rnbp表示非流程任務和角色之間的分配關系;URnbp={user,role},user∈Unbp,role∈Rnbp表示用戶和角色之間的分配關系.
2.2任務分配依從性分析框架
業務流程中的任務分配是指為流程中的每一個任務分配用戶來執行的過程.我們把包含某流程中所有任務的任務分配稱為該流程的一個分配計劃,同一業務流程模型在不同時刻的分配計劃可能不同,同一分配計劃在執行過程中也可能動態變化,例如任務執行者由于用戶生病、請假等一些原因不能執行分配計劃中任務時需要其他用戶來代替.任務委托是解決上述問題的一種機制.當用戶不能執行分配計劃中的任務時,如果該任務可以被委托,則該用戶可將任務委托給其他用戶去執行,從而保證業務流程順利完成.任務分配依從性分析框架能夠分析分配計劃,以及分配計劃與用戶固有權限之間是否存在沖突,以及在發生任務委托的情況下是否存在上述2種沖突.
TACAF∷=(CONST,TASK,ORG,ASSIGN,PA,DELEG)
CONST∷=(Pi,PPCi)表示權限以及權限之間的約束關系.其中,PPCi={p1,p2,constType},p1,p2∈Pi,constType∈{SoD,BoD}表示權限與權限之間的約束關系;
TASK∷=(Ti∪Tnbp,Pi,TPi)表示任務、權限以及任務和權限之間的分配關系.其中,TPi={task,permission},task∈Ti∪Tnbp,permission∈Pi表示權限與任務之間的分配關系;
ORG∷=(R,RR)表示系統中的角色以及角色之間的繼承關系.其中,R表示角色集合;RR={r1,r2},r1,r2∈R,表示角色之間的繼承關系,其中r1為父角色,r2為子角色;
ASSIGN∷=(Ui,Ti,UT)表示用戶、任務及任務分配關系.其中,UT={u,t},u∈Ui,t∈Ti,表示用戶u是任務t的執行者;
PA∷=(Tnbp,Rnbp,Unbp,TRnbp,URnbp)表示非流程任務、角色、用戶及其分配關系.其中,Tnbp∈T,表示非流程任務集合;Rnbp屬于R表示與非流程任務有關的角色集合;Unbp屬于U表示與Rnbp有關的用戶集合;TRnbp={task,role},task∈Tnbp,role∈Rnbp表示非流程任務和角色之間的分配關系;URnbp={user,role},user∈Unbp,role∈Rnbp表示用戶和角色之間的分配關系;
DELEG∷=(Ui,Ti,UD)表示用戶和任務的委托關系.其中,UD={u1,u2,t,dType},u1,u2∈Ui,u1表示委托人,u2表示被委托人,t∈Ti,表示委托任務,dType∈{grant,tranfer}表示委托類型.在TRBAC中,由于權限與任務綁定,因此,在業務流程執行過程中通常是一個用戶將任務實例委托給另一個用戶去執行[17].被委托人在獲取任務執行權限的同時,也獲取了執行該任務所需的權限.
2.3授權圖
授權圖是依從性分析框架的圖形化表示.從系統科學的角度來講,依從性分析框架包括用戶、角色、任務和權限4種組分,而組分之間的關系主要來源于不同組分之間(相同組分之間的關系可以轉換為不同組分之間的關系,第3節有詳細闡述),因此,可以使用分層的圖形化方法來表示依從性分析框架.由于不同層次之間的頂點之間關系的語義有明顯的指向性,因此,使用有向圖來表示依從性分析框架.我們稱由用戶、角色、任務和權限為頂點,他們之間的關系為邊構成的有向圖為授權圖.由于業務流程模型依從性分析框架和任務分配依從性分析框架的構成組分和關系有所不同,相應的授權圖也有所不同,使用TASK,PA,AA,ORG構建業務流程模型依從性分析框架的授權圖,稱為靜態授權圖(static authority digraph, SAD),使用TASK,PA,ASSIGN,ORG構建任務分配依從性分析框架的授權圖,稱為動態授權圖(dynamic authority digraph,DAD).DELEG作為任務分配依從性分析的另外一個輸入,CONST是業務流程模型和任務分配依從性分析的內容.下面給出靜態授權圖和動態授權圖的構建步驟.
靜態授權圖步驟構建:
1) 若權限p∈P且p?SAD,則創建節點p;
2) 若任務t∈T且t?SAD,則創建節點t;
3) 若角色r∈R且r?SAD,則創建節點r;
4) 若用戶u∈U且u?SAD,則創建節點u;
5) 若(t,p)∈TP且(t,p)?SAD,則創建邊(t,p);
6) 若(t,r)∈TRbp∪TRnbp且(t,r)?SAD,則創建邊(r,t);
7) 若(u,r)∈URbp∪URnbp且(u,r)?SAD,則創建邊(u,r);
8) 若(r1,r2)∈RR且(r2,r1)?SAD,則創建邊(r2,r1).
動態授權圖步驟構建:
1) 若權限p∈Pi且p?SAD,則創建節點p;
2) 若任務t∈Ti∪Tnbp且t?SAD,則創建節點t;
3) 若角色r∈Rnbp且r?SAD,則創建節點r;
4) 若用戶u∈Ui∪Unbp且u?SAD,則創建節點u;
5) 若(t,p)∈TPi且(t,p)?SAD,則創建邊(t,p);

Fig. 2 Static authorization digraph GS圖2 靜態授權圖GS
6) 若(t,r)∈TRnbp且(t,r)?SAD,則創建邊(r,t);
7) 若(u,r)∈URnbp且(u,r)?SAD,則創建邊(u,r);
8) 系(r1,r2)∈RR且(r2,r1)?SAD,則創建邊(r2,r1);
9) 若(u,t)∈UT且(u,t)?SAD,則創建邊(u,t).
使用有向圖GS和GD分別表示靜態授權圖和動態授權圖,則GS和GD分別如圖2和圖3所示.由于SAD和DAD中定義的用戶、角色、任務和權限之間的關系均為二元關系,通過TRBAC和業務流程模型及實例的相關定義易知,GS和GD能夠分別的準確表示BPMCAF和TACAF的含義.

Fig. 3 Dynamic authorization digraph GD圖3 動態授權圖GD
通過第2節給出的依從性分析框架及其圖形化表示,可以構建由用戶、角色、任務和權限為頂點,他們之間的關系為邊構成的授權圖.在授權圖中,從用戶節點U到權限節點P的路徑表示該用戶U可以獲取權限P;從角色節點R到權限節點P的路徑表示角色R可以獲取權限P;從任務節點T到權限節點P的邊表示任務T具有權限P.我們定義權限P之間存在安全約束,那么職責分離約束依從性分析是分析能夠獲取互斥權限的任務集合、角色集合和用戶集合的過程.職責綁定約束依從性分析是分析綁定權限不能夠被分配給同一用戶的過程.在第1節中已經給出用戶獲取權限的3種途徑,分別為通過角色和任務獲取、通過繼承關系獲取和通過委托機制獲取.在授權圖中,通過角色和任務獲取權限方式是由不同層節點之間的關系獲取,從用戶到權限的路徑長度為固定值3,因而在算法實現過程中具有較高的效率.而通過繼承關系獲取權限是通過同層次節點獲取權限的方法,從用戶到權限的路徑長度存在不確定性,難于直接分析.同樣地,在業務流程執行過程中發生的任務委托也增加了用戶所具有權限的不確定性.因此,需要消除上述不確定性.
本節首先給出授權圖節點間繼承關系的預處理方法,化簡繼承關系;然后給出委托關系預處理方法,消除由于委托關系帶來的不確定性;最后進行授權約束依從性分析.
3.1繼承關系化簡
Oh等人[6]對TRBAC中的繼承關系進行了定義,與RBAC中的繼承關系不同,TRBAC中的角色權限是任務的執行權限,繼承的權限也是任務執行權限.根據任務類型的不同,子角色繼承父角色的部分權限.Oh等人將任務分為P,S,W,A四類,分別表示不可繼承被動任務、可繼承被動任務、不可繼承主動任務和可繼承主動任務.子角色可以繼承父角色的S類和A類的任務執行權限.
在授權圖中,繼承關系是角色層中節點之間的邊來表示,我們希望通過將這種同層關系化簡為不同層面之間的關系從而降低授權圖的復雜程度便于依從性分析.使用TP,TS,TW和TA分別表示P,S,W,A四類任務集合,則TP∪TS=Tnbp,TW∪TA=Tbp.可以給出繼承關系化簡規則,即:
繼承關系化簡的主要思路是將父角色的可繼承任務的權限直接賦予子角色.化簡的優勢是將依從性分析框架中角色之間的關系轉換為角色與任務之間的關系,從而簡化依從性分析的過程.角色的繼承關系反應系統中角色的組織結構,而角色的組織結構通常是類似樹形結構.在化簡過程中,為了保證子節點能夠繼承父節點以及其他祖先節點的任務執行權限,需要按照原則進行化簡:1)從根節點的繼承關系開始化簡;2)在所有父節點的繼承關系化簡完成之后,子節點才能夠進行化簡.圖4為繼承關系化簡算法偽代碼.

(a) Reduction algorithm of one (b) Reduction algorithm of all roles role inheritance inheritance in the organization
Fig. 4 Algorithm of inheritance reduction
圖4 繼承關系化簡算法
3.2委托關系化簡
為了確保以用戶為中心的業務管理并支持跨組織的協作,業務流程中候選用戶經常需要將分配給他的任務委托給其他用戶去執行.完整的委托包括4個要素:委托人、被委托人、任務實例和委托方式.其中,委托方式包括授予和轉移.當委托人將任務實例執行權限授予被委托人時,委托人與被委托人均具有任務實例的執行權限.當委托人將任務實例執行權限轉移給被委托人時,只有被委托人具有任務實例執行權限.由于2種委托方式對任務實例執行權限的分配能夠造成不同的影響,因此在化簡時需要分別處理.
委托關系是用戶和用戶之間的關系,委托的內容是任務的執行權限,委托關系使委托人和被委托人所具有的任務執行權限發生變化.因此,為了能夠得到用戶在業務流程執行過程中某一時刻能夠獲取的所有權限,需要將被委托人和委托任務聯系起來.下面給出委托關系化簡規則,
委托關系化簡規則的主要思路是將用戶之間的委托關系轉換為用戶和角色以及角色和任務之間的分配關系.在化簡過程中,如果委托類型為transfer,那么委托人將失去任務的執行權限.如果委托類型為grant,那么委托之后委托人和被委托人均具有任務的執行權限.委托化簡的偽代碼如圖5所示:

Fig. 5 Algorithm of delegation reduction圖5 委托關系化簡算法
3.3依從性分析
通過繼承關系和委托關系化簡,可以得到由用戶、角色、任務和權限為頂點,不同類型頂點之間的關系為邊構成的授權圖.在這個授權圖中,我們可以通過有向圖的運算得到能夠獲取指定權限的所有任務集合(包括流程任務和非流程任務)、角色集合(包括流程角色、非流程角色以及通過角色間的繼承關系得到的權限)以及用戶集合(包括所有用戶以及通過用戶之間的委托關系得到的權限).
依從性分析是分析授權圖中用戶、角色和任務所具有的權限是否違反授權約束的要求.依從性分析框架主要分析職責分離和職責綁定約束.在業務流程環境中,職責分離約束可以分為靜態職責分離和動態職責分離約束,在本文中,靜態職責分離約束是指在業務流程設計階段,同一任務、角色或者用戶無論通過流程授權還是非流程授權均不能獲取互斥權限的規定.動態職責分離約束是指在業務流程執行階段,同一用戶無論通過流程授權還是非流程授權均不能獲取互斥權限的規定.同樣地,職責綁定約束分為靜態職責綁定約束和動態職責綁定約束.靜態職責綁定約束是指在業務流程設計階段,綁定權限能夠分配給同一個用戶.動態職責綁定約束是指業務流程執行階段,綁定權限能且只能分配給相同的用戶.下面給出上述4種約束的依從性分析算法.
靜態職責分離約束依從性分析的輸入是靜態授權圖SAD和互斥權限(v,w).如圖6所示分析過程:
1) 判斷是否存在任務t同時具有權限v和權限w,如果存在這樣的任務t,則發生了任務不依從.
2) 否則,判斷是否存在角色r能夠同時獲取權限v和權限w,如果存在這樣的角色r,則發生了角色不依從.
3) 否則,判斷是否存在用戶u能夠同時獲取權限v和權限w,如果存在這樣的用戶u,則發生了用戶不依從.

Fig. 6 Algorithm of static SoD conflict checking圖6 靜態職責分離沖突分析算法
動態職責分離約束依從性分析的輸入是動態授權圖DAD、互斥權限(v,w).動態授權圖刻畫的是流程實例的權限分配情況,由于任務以及非流程角色的職責分離依從性在靜態分析中已經進行分析,因此在這里只需要分析用戶的職責分離依從性,分析算法如圖7所示:

Fig. 7 Algorithm of dynamic SoD conflict checking圖7 動態職責分離沖突分析算法
靜態職責綁定依從性分析的輸入是靜態授權圖SAD和綁定權限(v,w).如果不存在任何用戶能夠同時獲取權限v和權限w,則違反靜態職責綁定約束,分析算法如圖8所示:

Fig. 8 Algorithm of static BoD conflict checking圖8 靜態職責綁定沖突分析算法
動態職責綁定依從性分析的輸入是動態授權圖DAD和綁定權限(v,w).如果存在用戶u,只能夠獲取權限v或者只能夠獲取權限w,則違反動態職責綁定約束,分析算法如圖9所示:

Fig. 9 Algorithm of dynamci BoD conflict checking
通過對角色繼承關系和委托關系的化簡,我們得到簡單授權圖.使用依從性分析算法對簡單授權圖進行分析可以發現4類違反授權約束的沖突.為了能夠消解所發現的沖突,需要對這4類沖突做進一步的分析.
4.1靜態職責分離沖突
任務層靜態職責分離沖突:當一個任務同時具有2個互斥權限時發生任務層靜態職責分離沖突.如圖10中沖突模式1所示,權限PA和PB為互斥權限,任務TA同時具有這2個權限.這種沖突是根本性的沖突且易于發現,但是在業務流程執行過程中存在嚴重的安全隱患,必須予以解決.沖突發生原因是在設計任務時沒有考慮職責分離約束的限制.解決思路是重新設計任務,如圖10中解決方案1所示,將任務TA分解為2個子任務TB和TC,將互斥權限分配給這2個不同任務.

Fig. 10 Static SoD conflict with tasks圖10 任務層靜態職責分離沖突

Fig. 11 Static SoD conflict with roles圖11 角色層靜態職責分離沖突
角色層靜態職責分離沖突:當一個角色通過分配給他的任務獲取互斥權限時發生角色層靜態職責分離沖突,如圖11中沖突模式2所示.角色層職責分離沖突使能夠激活該角色的用戶都能夠獲取互斥權限,安全隱患較為嚴重.解決思路是將任務角色RA進一步劃分為子角色RC和RD,并分別分配任務TA和TB,如圖11解決方案2所示;或者將任務TB分配給另外的角色RB來執行,如圖11解決方案3所示.角色可以通過任務分配和繼承父角色來獲取任務的執行權限.針對繼承父角色獲取任務執行權限導致的角色層靜態職責分離沖突,可以通過調整角色間的繼承關系來消解沖突.
用戶層靜態職責分離沖突:當一個用戶通過其激活的角色執行任務獲取互斥權限時發生用戶層靜態職責分離沖突,如圖12中沖突模式3所示.隨著系統規模的不斷擴大和用戶的增加,這一類沖突容易發生且難于發現,但是想比較而言安全威脅較小.解決這一類沖突有2種思路:
1) 如圖12中解決方案4和解決方案5所示,將任務TB分配給除角色RB以外的角色去執行,或者在角色RB中刪除用戶UA.這樣做的優點是一勞永逸,從根本上避免沖突發生;缺點是對系統調整較大,可能會影響系統執行效率.
2) 在業務流程運行階段進行安全檢查,在流程實例中避免用戶UA同時能夠執行任務TA和TB.

Fig. 12 Static SoD conflict with users圖12 用戶層靜態職責分離沖突
4.2動態職責分離沖突
動態職責分離沖突:當一個用戶通過分配給其的任務以及固有任務獲取互斥權限時發生動態職責分離沖突,如圖13所示.動態職責分離沖突發生在業務流程運行階段.對于圖13(a)和圖13(b)所示的職責分離沖突,可以將任務TB分配給另外的用戶UB去執行,如解決方案6和解決方案8所示.如果UA執行任務TB是通過任務委托獲取的權限,那么這樣的委托請求將被拒絕.對于圖13(a)中的職責分離沖突,還可以通過刪除角色RA中的用戶UA來消解沖突,如解決方案7所示.

Fig. 13 Dynamic SoD conflict圖13 動態職責分離沖突
4.3靜態職責綁定沖突
靜態職責綁定沖突:當不存在任何用戶能夠同時獲取綁定關系的權限時發生靜態職責綁定沖突,如圖14沖突模式6所示.解決思路是將任務TA和TB合并為一個任務TC,或者將相關角色合并得到一個角色RD,或者修改用戶與角色間的分配關系,使得某些用戶(UB)能夠同時獲取權限PA和PB,分別如圖14中解決方案9~11所示.

Fig. 14 Static BoD conflict圖14 靜態職責綁定沖突
4.4動態職責綁定沖突
動態職責綁定沖突:當一個用戶獲取綁定權限中的一個而不能夠獲取另外一個時發生動態職責綁定沖突,如圖15所示.對于沖突模式7和沖突模式8,將分配計劃中的UB,TB修改為UA,TB則消除了職責綁定沖突,如解決方案12和解決方案13所示.對于動態職責綁定沖突,解決思路主要是通過修改分配計劃達到消解沖突的目的.

Fig. 15 Dynamci BoD conflict圖15 動態職責綁定沖突
5.1實例分析
本節使用銷售部門的實例來說明所提出框架和分析方法的有效性.該部門設置銷售經理(sales manager)、銷售前臺(sales man)和銷售后臺(sales clerk)3個角色;接收訂單(receive order)、查看庫存(check product stock)、查看付款信息(check payment)、審批訂單(approve order)、查看銷售結果(review sales results)和查看銷售統計(review sales statistics)6個任務.角色之間繼承關系以及業務流程邏輯結構分別如圖16和圖17所示.用戶角色、角色任務以及任務權限的分配關系分別如表1~3所示.應用本文所提出授權圖構造方法以及繼承關系化簡方法得到授權圖如圖18所示.在這個實例中存在3個授權約束:1)約束1.創建訂單和修改訂單是綁定權限;2)約束2.創建訂單和確認訂單是互斥權限;3)約束3.修改訂單和確認訂單是互斥權限.我們基于Java編寫了原型系統實現本文所提出的依從性分析框架和方法,該原型系統獨立于系統部署的平臺,通過開發中間件的方式從系統中獲取依從性分析所需數據,具有較為廣泛的應用范圍.執行原型系統得到依從性分析結果如表4所示.

Fig. 16 Organization structure of sales department圖16 銷售部門組織結構

Fig. 17 Logic structure of sales process圖17 銷售流程邏輯結構

Table 1 User Role Assignment表1 用戶角色分配關系

Table 2 Role Task Assignment表2 角色任務分配關系

Table 3 Task Permission Assignment表3 任務權限分配關系

Fig. 18 Authorization graph of sales process圖18 銷售流程授權圖

Table 4 Result of Compliance Analysis表4 依從性分析結果
從表4可以看出,該實例存在角色層靜態職責分離沖突和用戶層靜態職責分離沖突.由于銷售經理繼承了銷售前臺和銷售后臺的角色,而銷售前臺和銷售后臺能夠執行的任務接收訂單和審批訂單都是可繼承的,因此,銷售經理獲取了接收訂單和審批訂單的執行權限,從而獲取了創建、修改訂單和確認訂單的權限,違反角色層靜態職責分離約束.由于這種沖突是由于角色繼承關系引起的,因此可以通過令銷售經理不再繼承銷售前臺的方法來消解.員工丙具有銷售后臺和銷售前臺2個角色,同樣的也能夠獲取創建、修改訂單和確認訂單的權限,違反了用戶層職責分離沖突.針對這種沖突可以在流程運行階段通過動態依從性檢查的方法判斷用戶丙是否在同一個流程實例中獲取這2個權限.
5.2實驗驗證
我們使用Java實現了業務流程授權約束依從性分析的原型系統.但是由于獲取實際的授權數據存在較大的困難[18-19],我們采用了文獻[18]的思路,設計并實現了授權圖的實例產生器.該實例產生器能夠產生實驗所需的靜態授權圖和動態授權圖,靜態授權包括主動訪問(AA)、被動訪問(PA)、組織(ORG)、任務(TASK)和約束(CONST).動態授權包括分配計劃(ASSIGN)、被動訪問(PA)、組織(ORG)、任務(TASK)、約束(CONST)和委托(DELEG).
我們將授權圖的節點數量n作為參數輸入實例產生器,按照規則產生用戶、角色、任務和權限的數量.具體地,用戶數量un=n×4/10,角色數量rn=n×1/10,任務數量tn=n×2/10,權限數量pn=n×3/10.節點之間的關系(即邊)隨機生成,生成率為5%(每一個2元關系矩陣的0和1比率為95∶5).角色間的繼承關系為深度為3的樹形結構.職責分離和職責綁定約束的數量由權限數量決定,我們設置每10個權限產生一個職責分離約束,每20個權限產生一個職責綁定約束.我們將節點總數分別設置為100,200,300,400和500,并且每個規模產生10個授權圖.這樣我們能夠分別得到50個靜態授權圖實例和50個動態授權圖實例.對這5個規模共100個授權圖進行依從性分析,我們使用一臺1.40 GHz Intel Core i3-3229Y CPU,4 GB內存的電腦進行實驗,得到實驗結果如表5和表6所示:

Table 5 Result of Static Compliance Analysis Experiment表5 靜態依從性分析實驗結果

Table 6 Result of Dynamci Compliance Analysis Experiment表6 動態依從性分析實驗結果
表5和表6是統計數據,我們對每一種規模的授權圖進行依從性分析,記錄產生的邊數、分析所消耗的時間、被違反的職責分離和職責綁定約束的數量,然后取平均值.從實驗結果來看:
1) 隨著節點規模的增長,授權圖中的邊數急劇增長,依從性分析消耗的時間也在增長,當靜態授權圖節點數為500時,平均有2 759.7條邊,而依從性分析的時間是474 ms,分析效率比較理想.而動態授權圖由于分配計劃是針對每一個任務分配一個用戶,因此節點間的關系比靜態授權圖簡單,邊的數量比同等規模的靜態授權圖減少很多,分析效率也比較理想.
2) 從表7能夠發現職責分離約束被違反的比例隨著節點規模的增長在不斷增加,而職責綁定沖突發生的比例在不斷減少.節點規模為500時,15個職責分離約束幾乎全部會被違反(99%和95%的比例),職責綁定約束幾乎不會被違反(1%和7%的比例).這是因為節點的增加導致邊的增加,而邊的增加意味著用戶獲取權限路徑的增加,從而同一個用戶獲取具有職責分離關系和職責綁定關系的概率都得到增長,導致職責分離沖突發生的概率增加和職責綁定沖突發生的概率減少.這一結論也說明本文的意義所在,職責分離沖突在系統規模較小時不易發生,但是隨著系統規模的擴大而沖突發生的概率急速增長,給出一種能夠適用于大規模業務流程系統的高效依從性分析方法就勢在必行.另外,由于在分配計劃中流程任務節點的入度始終為1,因此動態授權圖中沖突發生的比例隨著節點增加的變化要相對緩慢一些.

Table 7 Violation Percentage of Authorization Constraints表7 授權約束被違反的比例
以上對本文所提出方法的時間效率進行了分析.下面與現有研究中其他方法進行定性比較.比較結果如表8所示.通過比較可以看到,相對于以往的研究,本文所提出的依從性分析框架兼顧了靜態約束、動態約束、職責分離約束、職責綁定約束、流程授權、非流程授權、委托等各個方面,更貼近實際企業環境,易于應用.同時針對所發現的授權沖突給出解決方案.我們對相關算法進行試驗,給出效率分析,與Armando所提出的模型檢查的方法相比具有明顯優勢.

Table 8 Compare of the Compliance Analysis Framework with Other Researches
Note:“√” means support.
現有的工作在業務流程授權約束依從性分析方面進行了大量的工作.進行授權約束依從性分析時,首先需要明確系統的訪問控制模型和授權約束.因此,相關工作將從訪問控制模型和授權約束,及依從性分析方法2個方面展開.
首先,在訪問控制模型及授權約束方面,Bertino等人[2]首次提出約束描述語言用于描述RBAC所不能描述的約束,如職責分離約束.Ultra等人[22]提出了簡單職責分離模型,能夠方便的與基于角色的訪問控制模型相結合.Brucker 等人[23]提出了在業務流程設計階段和運行階段基于RBAC安全需求的描述方法.Li 等人[4]提出了SoDA來描述業務流程授權約束,包括質量約束(例如執行任務的角色)和數量約束(例如SoD).上述方法都是基于RBAC展開的,由于RBAC未考慮系統中的業務流程以及任務與角色的區別,未能很好適應企業業務流程環境,因此研究者提出了基于“任務-角色”的訪問控制模型.
Xing等人[24]提出了基于角色和任務的工作流授權模型.在該模型中角色不再直接具有權限,而是通過分配給其的任務獲取權限.同時,文章提出了基于角色和任務的約束描述語言RTCL來描述職責分離等約束.Oh等人[6]提出了TRBAC的訪問控制模型來滿足企業環境中經常產生主動訪問(業務流程訪問)和被動訪問(基于RBAC的訪問)相結合的需求,并對任務的類型進行了深入分析.上述方法對RBAC進行擴展,提出了任務的概念,這些方法在業務流程授權過程中遵循了最小權限原則,提高了安全性.但是使用形式化方法描述授權約束,使得約束的表現形式不夠靈活,同時也使得約束描述和分析過程必須具備一定的專業知識,不易廣泛地應用,本文使用了權限1、權限2、約束類型三元組來描述授權約束,不僅易于描述和理解,便于靈活使用,在依從性分析時也具有較高的效率.
在授權約束依從性分析方法方面,Liu等人[25]使用Petri網描述工作流,使用Prolog語言描述職責分離規則,使用邏輯推理的方法找到滿足安全規則的有效執行鏈.Lu 等人[8]使用著色Petri網來驗證業務流程設計階段職責分離約束的正確性和一致性.Schefer-Wenzl 等人[13]給出了流程感知信息系統中基于角色訪問控制模型的委托建模方法,并在此基礎上分析了委托情況下存在的授權沖突,給出解決方案.該方法能夠分析委托是否會產生沖突,但是沒有考慮委托之外的授權引起的授權沖突,并且未考慮職責綁定約束.Salnitri 等人[26-27]提出了SecBPMN來擴展BPMN以描述描述信息系統,使用SecBPMN-Q描述安全策略,并給出了SecBPMN-Q語言所描述安全策略的驗證方法.該方法依賴于BPMN,具有局限性.Strembeck 等人[21]提出了業務流程環境中互斥和綁定約束一致性分析的通用算法,避免約束沖突,保證在流程設計和執行階段的依從性.該方法給出了業務流程靜態設計和動態執行時職責分離和職責綁定約束依從性分析的通用算法,但是該算法沒有考慮被動授權的情況,本文也未對算法的效率進行說明.
另外,模型檢查作為業務流程是否滿足安全策略的檢測方法也得到了大量關注[20,28-30].上述方法中,使用推理、Petri網等形式化的方法具有較大的局限性,并且應用起來需要一定的專業知識,不易廣泛應用.給出的一些通用算法不能夠完全適應當前企業流程環境.而模型檢查的方法在較大規模的系統中應用時存在狀態空間急劇增長的問題,與實際應用存在較大的距離.
基于上述研究現狀,結合企業業務流程環境的實際需求,本文基于TRBAC提出了授權約束依從性分析框架,所提出的框架考慮了流程授權和非流程授權、業務流程任務委托、角色繼承關系、職責分離和職責綁定約束、靜態約束和動態約束,并提出授權圖來表示框架內所包含的內容,通過將依從性分析問題轉換為有向圖的分析問題來高效地發現授權約束沖突.
本文提出了一種支持任務委托的業務流程授權約束依從性分析框架.該框架能夠描述業務流程授權和非業務流程授權,能夠描述角色之間的繼承關系、業務流程中任務委托.提出了授權圖來表示依從性分析框架,給出了授權圖的構造和化簡方法,并基于授權圖給出了依從性分析方法.我們所提出的分析方法能夠分析靜態職責分離、動態職責分離、靜態職責綁定和動態職責綁定4類沖突以及8種沖突模式,并針對每一種沖突模式給出一組解決方案.實現了所提出框架和方法的原型系統,并通過實例分析和實驗驗證說明了所提出框架和方法的有效性.
近些年,我們發現學術界和業界對流程感知信息系統的關注不斷增加,我們也相信越來越多的流程感知信息系統將會應用于實際環境中去.因此,權限的管理也隨之變得更為重要.本文所提出的授權約束依從性分析框架對于保障權限的正確分配和任務的安全執行具有重要意義.
[1] Ly L T, Rinderle-Ma S, Knuplesch D, et al. Monitoring business process compliance using compliance rule graphs[C] //Proc of OTM’11. Berlin: Springer, 2011: 82-99
[2] Bertino E, Ferrari E, Atluri V. An authorization model for supporting the specification and enforcement of authorization constraints in workflow management systems[J]. ACM Trans on Information System Security, 1999, 2(1): 65-104
[3] Wolter C, Schaad A. Modeling of task-based authorization constraints in BPMN[C] //Proc of the 5th Int Conf on Business Process Management. Berlin: Springer, 2007: 64-79
[4] Li Ninghui, Wang Qihua. Beyond separation of duty: An algebra for specifying high-level security policies[C] //Proc of the 13th ACM Conf on Computer and Communications Security. New York: ACM, 2006: 356-369
[5] Schaad A. A framework for evidence lifecycle management[C] //Proc of WISE’07. Berlin: Springer, 2007: 191-200
[6] Oh S, Park S. Task-role-based access control model[J]. Information Systems, 2003, 28(6): 533-562
[7] Wolter C, Schaad A, Meinel C. Task-based entailment constraints for basic workflow patterns[C] //Proc of ACM Symp on Access Control Models and Technologies. New York: ACM, 2008: 51-60
[8] Lu Yahui, Zhang Li, Sun Jiaguang. Using colored Petri nets to model and analyze workflow with separation of duty constraints[J]. The International Journal of Advanced Manufacturing Technology, 2009, 40(1): 179-192
[9] Hasebe K, Mabuchi M, Matsushita A. Capability-based delegation model in RBAC[C] //Proc of ACM SACMAT’10. New York: ACM, 2010: 109-118
[10] Crampton J, Khambhammettu H. On delegation and workflow execution models[C] //Proc of ACM SAC’08. New York: ACM, 2008: 2137-2144
[11] Crampton J, Khambhammettu H. Delegation and satisfiability in workflow systems[C] //Proc of ACM SACMAT’08. New York: ACM, 2008: 31-40
[12] Crampton J, Khambhammettu H. Delegation in role-based access control[J]. International Journal of Information Security, 2008, 7(2): 123-136
[13] Schefer-Wenzl S, Strembeck M. Modeling support for role-based delegation in process-aware information systems[J]. Business & Information Systems Engineering, 2014, 6(4): 215-237
[14] Simon R, Zurko M E. Separation of duty in role-based environments[C] //Proc of the 10th Computer Security Foundations Workshop. Piscataway, NJ: IEEE, 1997: 183-194
[15] Ferraiolo D, Cugini J, Kuhn D R. Role-based access control (RBAC): Features and motivations[C] //Proc of the 11th Annual Computer Security Applications Conf. Piscataway, NJ: IEEE, 1995: 241-248
[16] Botha R A, Eloff J H P. Separation of duties for access control enforcement in workflow environments[J]. IBM Systems Journal, 2001, 40(3): 666-682
[17] Hsu H J, Wang F J. A delegation framework for task-role based access control in WFMS[J]. Journal of Information Science & Engineering, 2011, 27(3): 1011-1028
[18] Cohen D, Crampton J, Gagarin A, et al. Engineering algorithms for workflow satisfiability problem with user-independent constraints[C] //Proc of FAW 2014. Berlin: Springer, 2014: 48-59
[19] Wang Qihua, Li Ninghui. Satisfiability and resiliency in workflow authorization systems[J]. ACM Trans on Information & System Security, 2010, 13(4): 1-35
[20] Armando A, Ponta S E. Model checking authorization requirements in business processes[J]. Computer Security, 2014, 40: 1-22
[21] Strembeck M, Mendling J. Generic algorithms for consistency checking of mutual-exclusion and binding constraints in a business process context[G] //LNCS 6426: Proc of OTM 2010. Berlin: Springer, 2010: 204-221
[22] Ultra J D, Pancho-Festin S. A simple model of separation of duty for access control models[J]. Computers & Security, 2017, 68: 69-80
[23] Brucker A D, Hang I, Ckemeyer G, et al. SecureBPMN: Modeling and enforcing access control requirements in business processes[C] //Proc of ACM SACMAT’12. New York: ACM, 2012: 123-126
[24] Xing Guanglin, Hong Fan. A workflow authorization model based on role and task and constraints specification[J]. Journal of Computer Research and Development, 2005, 42(11): 1946-1953 (in Chinese)
(邢光林, 洪帆. 基于角色和任務的工作流授權模型及約束描述[J]. 計算機研究與發展, 2005, 42(11): 1946-1953)
[25] Liu Daobin, Guo Li, Bai Shuo. A methodology for analyzing security policy in workflow[J]. Journal of Computer Research and Development, 2008, 45(6): 967-973 (in Chinese)
(劉道斌, 郭莉, 白碩. 一種工作流安全策略分析方法[J]. 計算機研究與發展, 2008, 45(6): 967-973)
[26] Salnitri M, Dalpiaz F, Giorgini P. Modeling and Verifying Security Policies in Business Processes[G] //LNBIP 175: Proc of BPMDS’14. Berlin: Springer, 2014: 200-214
[27] Salnitri M, Dalpiaz F, Giorgini P. Designing secure business processes with SecBPMN[J]. Software & Systems Modeling, 2017, 16(3): 737-757
[28] Arsac W, Compagna L, Pellegrino G, et al. Security validation of business processes via model-checking[C] //Proc of ESSoS’11. Berlin: Springer, 2011: 29-42
[29] Mendt T, Sinz C, Tveretina O. Analyzing Separation of Duties Constraints with a Probabilistic Model Checker[M]. Berlin: Springer, 2011: 18-29

[30] Armando A, Carbone R, Compagna L. SATMC: A SAT-based model checker for security protocols, business processes, and security APIs[J]. International Journal on Software Tools for Technology Transfer, 2016, 18(2): 187-204BoYang, born in 1985. PhD candidate of computer science at Beihang University. His main research interests include the security and privacy of network and business process.
ComplianceAnalysisofAuthorizationConstraintsinBusinessProcess
Bo Yang1,2and Xia Chunhe1,2,3
1(BeijingKeyLaboratoryofNetworkTechnology(BeihangUniversity),Beijing100191)2(SchoolofComputerScienceandEngineering,BeihangUniversity,Beijing100191)3(CollegeofComputerScienceandInformationTechnology,GuangxiNormalUniversity,Guilin,Guangxi510004)
A novel framework of business process compliance analysis is proposed in this paper, and the proposed framework can process 1)business process authorization and non-business process authorization; 2)delegation of task of business processes; 3)inheritance of roles; 4)separation of duty and binding of duty constraints; 5)statics constraints and dynamic constraints. Authorization graph is proposed to describe the framework, and construct and reduce methods of authorization graph are designed to maintain the graph, then compliance analysis algorithms of authorization graph are proposed. Based on the analysis results, conflict patterns are presented. A set of resolutions for each pattern are provided, and a prototype system is implemented. The framework of authorization constraint compliance analysis, independent of platform, can be widely applied to system security analyzing. The effectiveness of the proposed method is reported by a case study and experiments at the end of this paper.
business process; authorization constraints; compliance; separation of duty; binding of duty; task delegation
TP391

XiaChunhe, born in 1965. Professor and PhD supervisor of Beihang University. Director of Key Laboratory of Beijing Network Technology. Senior member of CCF. His main research interests include network security, network management and security policy analysis.

2015年《計算機研究與發展》高被引論文TOP10
數據來源:CSCD,中國知網;統計日期:2016-12-05