李懷明 宋方方 王連慶
(大連理工大學管理科學與工程學院 遼寧 大連 116024)
隨著信息化、網(wǎng)絡化的飛速發(fā)展,移動計算在電子政務等大型信息系統(tǒng)中的應用日益普及[1]。在移動計算為電子政務提供方便快捷的同時,也使得信息資源的安全訪問問題日趨突出。因此,新環(huán)境下如何安全有效地進行授權成為建設復雜政務系統(tǒng)的關鍵問題。
目前解決復雜政務系統(tǒng)中授權管理問題的思路是構(gòu)建訪問控制模型,而且大多是以RBAC模型為基礎的擴展模型[2]。單純的RBAC模型已經(jīng)不能適應這種新型網(wǎng)絡環(huán)境的要求,為了保證信息訪問的合法性、安全性以及可控性,國內(nèi)外研究學者在細粒度約束層面提出了許多擴展模型。Joshi等[3]提出了通用的時態(tài)訪問控制模型RTRBAC,但是該模型只是具備了時態(tài)因素,并沒有考慮到角色分配時的時態(tài)因素。Govington等[4]通過引入環(huán)境角色提出GRBAC模型,要求分配的權限要與環(huán)境角色集合相關聯(lián)。Ray等[5]提出了基于位置的訪問控制模型,討論了系統(tǒng)組件與位置的關系。GEO-RBAC模型[6]對主客體位置以及地理邊界建模,主要用于移動協(xié)作系統(tǒng)。穆玲玲等[7]提出了基于權限屬性的UCONABC訪問控制模型,給出了多權限系統(tǒng)授權的實現(xiàn)方法。沈海波等[8]通過構(gòu)造Pop權能令牌,提出了受限環(huán)境下基于權能的訪問控制安全構(gòu)架,并給出了客戶端到資源服務器的認證方案。熊厚仁等[9]將RBAC與ABAC相結(jié)合,融合兩個模型的優(yōu)勢提出了混合擴展訪問控制模型HARBAC。董理君等[10]提出了一種基于環(huán)境安全的角色訪問控制模型ESRBAC,給出了環(huán)境安全等級,只有當角色的環(huán)境安全等級達到規(guī)定級別時角色才有效。針對復雜政務系統(tǒng)的動態(tài)授權方面,彭友等[11-13]從系統(tǒng)權限的可控性和資源的安全性等方面的考慮,在RBAC模型的基礎上增加了時空約束、資源約束和事件互斥約束,用于解決授權問題。文獻[14]結(jié)合可信計算給出了根據(jù)用戶行為可信度的動態(tài)授權方法。李鳳華等[15]提出了基于行為的訪問控制模型ABAC,并引入管理行為給出了模型的管理模型,ABAC模型更適用于解決網(wǎng)絡環(huán)境下支持移動計算的信息系統(tǒng)中的訪問控制問題,但是該模型忽略了復雜的組織機構(gòu),因此不能很好應對復雜的政務系統(tǒng)的用戶行為管理。丁峰等[16]提出了基于組織的訪問控制系統(tǒng)授權驗證單層關系模型,用于對ORBAC模型授權情況進行許可驗證,但沒有考慮動態(tài)的用戶行為。使用控制模型UCON(usage control)[17]是目前較為流行的訪問控制模型,該模型包括了除授權過程中必備的基本元素以外,還新增了義務和條件兩個元素。雖然UCON模型在分布式、跨域環(huán)境下具有明顯的優(yōu)勢,但是該模型的授權管理較為復雜,將使用控制模型應用于更高復雜度的政務系統(tǒng),其訪問控制能力還有待研究。
分析現(xiàn)有的研究成果發(fā)現(xiàn),基于組織的四層訪問控制模型(OB4LAC)[13]更加適合解決復雜政府系統(tǒng)授權管理問題,但是該模型存在不能動態(tài)授權等不足。因此,以OB4LAC模型為基礎,引入行為的思想,增加時間和環(huán)境約束,提出了基于時間和環(huán)境約束的四層訪問控制模型TE-OB4LAC,以求解決復雜政務系統(tǒng)中用戶在不同時間不同環(huán)境下的授權管理問題。
基于組織的四層訪問控制模型(OB4LAC)的核心是將政府中代表權能的組織引入到該模型中來,由于組織機構(gòu)是基本不變的,只需將人員重新分配崗位,而崗位對應的角色不會輕易改變,從而實現(xiàn)了復雜政務系統(tǒng)中高效便捷靈活的授權管理。OB4LAC模型結(jié)構(gòu)圖如圖1所示。
圖1 OB4LAC結(jié)構(gòu)圖
目前,OB4LAC模型已經(jīng)在很多大型復雜電子政務系統(tǒng)中得到應用,并取得了良好的應用效果。但是在移動計算推動電子政務發(fā)展的同時,OB4LAC模型也出現(xiàn)了不足之處。在移動計算環(huán)境中,崗位和角色訪問系統(tǒng)時的位置信息、平臺信息、網(wǎng)絡邏輯位置、網(wǎng)絡物理位置等環(huán)境信息會影響其訪問系統(tǒng)的權限。例如辦事處某崗位的辦公許可時間為每周一的上午9點到上午11點,且要求在政府內(nèi)網(wǎng)環(huán)境下訪問,那么隸屬于該崗位的人員只能在這個時間和環(huán)境約束范圍內(nèi)對某些資源進行相關操作,一旦超出該時間和環(huán)境約束,系統(tǒng)就會做出相應的控制。
因此,為了在不失訪問的靈活性的同時,又保證系統(tǒng)的安全性,有必要將時態(tài)和“環(huán)境”概念引入到訪問控制模型機制中。
TE-OB4LAC模型是OB4LAC模型的擴展,目的是實現(xiàn)用戶的訪問權限會隨著自身的時態(tài)和環(huán)境信息動態(tài)地調(diào)整。TE-OB4LAC模型的核心是在崗位層和角色層添加時間約束和環(huán)境約束,在用戶請求訪問時,系統(tǒng)可以根據(jù)崗位和角色的時態(tài)和環(huán)境來動態(tài)為用戶分配權限。TE-OB4LAC模型的結(jié)構(gòu)圖如圖2所示。
圖2 TE-OB4LAC結(jié)構(gòu)圖
TE-OB4LAC模型的元素包括了OB4LAC模型的基本元素,具體如下:
用戶集USR={u1,u2,…,um}。
崗位集POS={pos1,pos2,…,posn}。
角色集ROL={rol1,rol2,…,rolt}。
會話集SESS={s1,s2,…,sp}。
操作集OPE={op1,op2,…,opk}。
對象集OBJ={ob1,ob2,…,obl}。
信息對象類型集Obt={obt1,obt2,…,obtl}。
權限集PER=2OPE×Obt。
UP?USR×POS表示多對多的用戶崗位分配關系。
RP?ROL×POS表示多對多的角色崗位分配關系。
ROP?ROL×PER表示多對多的角色權限分配關系。
除了基本元素以外,TE-OB4LAC模型增加了新的元素:時態(tài)、環(huán)境、崗位行為、角色行為。涉及到的相關概念定義如下:
定義1時態(tài) 時態(tài)T是用戶訪問系統(tǒng)獲取權限時與時間相關的約束的集合。記T={TR,P,D},TR、P和D的定義如下。
定義1.1時間區(qū)間tr={ (ti,tj)|ti,tj∈Time,i 定義1.2生命周期時間 周期的表示如下:給定公歷C1,C2,…,Cn,Cd,時間周期P定義為: 式中:O1=all,Oi∈2N∪{all},Ci?Ci-1,i=2,3,…,n,Cd?Cn,且x∈IN。 O1=all表示所有時間區(qū)間,Ci指時間區(qū)間的子集,x指時間區(qū)間的長度,Cd指時間區(qū)間的長度單位。 例如,allyear+{3,6}·months?2·months表示的是從每年的3月和6月開始,分別持續(xù)2個月,即表示3月、4月和6月、7月。TE-OB4LAC模型中時間區(qū)間和周期時間約束是根據(jù)組織中實際業(yè)務的時間要求而制定的。 定義1.3激活狀態(tài)的最大時限D(zhuǎn)表示崗位或者角色激活狀態(tài)可持續(xù)的最長時間,D的取值必須小于在時間區(qū)間tr的時間差,即D≤(tj-ti)。當崗位或者角色激活時間超過D,則系統(tǒng)需要根據(jù)情況非關聯(lián)性地撤銷崗位或者角色的分配,例如系統(tǒng)可通過界面置灰或者警告框來提醒用戶需要重新激活崗位或者角色。 定義2環(huán)境 環(huán)境是指用戶訪問系統(tǒng)時的外部客觀信息。采用文獻[15]中定義的環(huán)境E={EH,ES,EL,EN,EC},用來表示環(huán)境約束集合。其中EH,ES分別指的是用戶的硬件平臺和軟件平臺,EL指的是用戶的場所物理位置,EN指的是用戶請求訪問系統(tǒng)時的網(wǎng)絡位置,包括網(wǎng)絡物理位置和網(wǎng)絡邏輯位置,EC指的是用戶使用的密碼系統(tǒng)。 定義3崗位行為 崗位行為表示用戶u在啟動會話s激活角色時的崗位、時態(tài)和環(huán)境信息,記崗位行為為Ap。 Ap={(P,e,t)|P?POS,e?E,t?T} 定義4角色行為 角色行為表示角色r獲取權限時的角色、時態(tài)和環(huán)境信息,記角色行為為Ar。 Ar={(R,e,t)|R?ROL,e?E,t?T} 定義5行為狀態(tài) 崗位行為和角色行為都包含三種狀態(tài),分別是可用Enable狀態(tài)、不可用Disable狀態(tài)和激活Active狀態(tài)。崗位行為和角色行為受到時態(tài)和環(huán)境的雙重影響,只要其中一個要素發(fā)生了變化,行為的狀態(tài)就可能發(fā)生改變。Enable狀態(tài)指的是崗位或者角色當前的時態(tài)和環(huán)境滿足時態(tài)和環(huán)境約束,可用為其分配角色和權限。Disable狀態(tài)與Enable狀態(tài)相反,表示目前的崗位和角色不可以使用。而Active狀態(tài)表示的是崗位或者角色處于激活狀態(tài),Active狀態(tài)只能從Enable狀態(tài)轉(zhuǎn)化而來。 行為的狀態(tài)之間的轉(zhuǎn)化關系如圖3所示。 圖3 行為狀態(tài)轉(zhuǎn)換圖 在TE-OB4LAC模型中,只有崗位狀態(tài)處于Enable狀態(tài),才可以為其分配狀態(tài)為Enable的角色。所以,崗位行為狀態(tài)的判定是角色行為狀態(tài)判定的前提。 行為狀態(tài)判定涉及到的函數(shù)包括verity_t()和verity_e()。下面給出崗位行為判定的函數(shù)形式化表示,角色行為狀態(tài)判定與此類似,不再贅述。 2.1.1 時間約束上的判斷 設verity_t(req_t,pos,T_pos)為時態(tài)檢驗函數(shù),req_t為當前請求的時態(tài),pos為當前崗位,T_pos為當前崗位的時態(tài)約束集合。函數(shù)返回值為result,為布爾類型。 其判定規(guī)則為:若請求的時態(tài)狀態(tài)req_t滿足時態(tài)狀態(tài)T_pos的要求則返回True, 否則返回False。 verify_t(req_t,pos,T_pos,out:result:BOOLEAN) ifpos∈POS∧T_pos∈T result=(t1≤req_t≤t2|t1,t2∈T_pos) elseresult=False req_tu為用戶u所處的時刻,可通過函數(shù)currenttime取得一個不可偽造、不可更改,具有可鑒別性的時間標記。T_pos(pos)=={tr,p,d}為崗位pos的時間約束,當verify_t(req_tu,T_pos(pos))=True,表示崗位行為在時間約束上處于Enable狀態(tài),可以為崗位分配角色;否則為Disable狀態(tài)。 2.1.2 環(huán)境約束上的判斷 設verity_e(req_e,pos,E_pos)為環(huán)境檢驗函數(shù),它與時態(tài)檢驗函數(shù)類似,req_e表示當前請求的環(huán)境狀態(tài),E_pos為當前崗位的環(huán)境約束集合。 verify_e(req_e,pos,E_pos,out:result:BOOLEAN) ifpos∈POS∧E_pos∈E result=(req_e∈E_pos) elseresult=False 當verify_e(req_eu,E_pos(pos))=True,表示崗位行為在環(huán)境約束上處于Enable狀態(tài),可以為崗位分配角色;否則為Disable狀態(tài)。 只有當崗位在時間約束和環(huán)境約束上均為Enable狀態(tài),則崗位行為為Enable狀態(tài),否則為Disable狀態(tài)。 在TE-OB4LAC模型中,時間約束和環(huán)境約束會影響用戶的最終權限。授權過程主要包括兩個階段:第一階段是為崗位行為分配角色,然后進行角色裁剪,獲得最終角色。第二階段是判斷角色是否存在權限沖突,進行權限裁剪后,獲得最終權限。 角色裁剪指的是崗位行為處于可用狀態(tài)時,計算出與崗位相關聯(lián)的角色RP。如果崗位行為不能滿足的角色的時間或環(huán)境約束的要求,則該角色被裁剪,其余的角色狀態(tài)標記為可用,并記為Ra1(pos,t,e),在Ra1(pos,t,e)中,如果角色之間不能遵循職責分離SoD(Separation of Duty)原則,則按照等級優(yōu)先策略,保留優(yōu)先級高的角色。獲得的最終角色記為Ra2(pos,t,e)。 權限裁剪是指在Ra2(pos,t,e)中,計算Ra2(pos,t,e)所有的權限ROP,如果當前時間或環(huán)境不能滿足權限的要求,則該權限被裁剪,其余權限記為Pa1(pos,t,e)。然后判斷權限之間是否存在沖突,如果存在沖突,則按照安全策略,保留不對客體原狀態(tài)做修改的權限。獲得的最終權限記為Pa2(pos,t,e),即崗位在時間t和環(huán)境e下獲得的最終權限。 下面給出詳細的授權流程,描述如下: Step1用戶通過身份認證進入系統(tǒng),發(fā)出會話請求。 Step2判斷崗位行為的狀態(tài)。若崗位行為為enable狀態(tài),則繼續(xù)執(zhí)行,否則會話結(jié)束。 Step3在崗位行為可用的狀態(tài)下,獲得與崗位相關聯(lián)的角色RP及角色對應的時間和環(huán)境約束。 Step3.1判斷角色的許可狀態(tài),判斷是否需要角色裁剪,獲得初步可激活的角色集Ra1(pos,t,e)。 Step3.2判斷Ra1(pos,t,e)是否遵循職責分離原則,如果是,則獲得最終角色集Ra2(pos,t,e),轉(zhuǎn)向Step4;如果否,則執(zhí)行等級優(yōu)先策略,獲得最終角色集Ra2(pos,t,e)。 Step4根據(jù)Ra2(pos,t,e)計算所有權限ROP,根據(jù)當前崗位行為判斷是否需要權限裁剪,獲得初步權限集Pa1(pos,t,e)。 Step5判斷Pa1(pos,t,e)是否存在權限沖突,如果存在,則執(zhí)行安全策略,獲得最終權限集Pa2(pos,t,e),如果不存在,則Pa1(pos,t,e)就是當前崗位行為最終的權限集。 如果用戶的行為發(fā)生了變化時,但崗位行為仍然是可用狀態(tài),那么此時對應的權限也可能發(fā)生變化,具體分兩種情況處理: (1) 用戶對應的角色沒有發(fā)生變化,則不需要重新對用戶進行授權,只要根據(jù)當前獲得的時間和環(huán)境信息,進行權限裁剪即可。 (2) 用戶對應的角色發(fā)生變化,則需要重新為崗位行為授權,依次進行角色裁剪和權限裁剪,進而得到最終的權限。 基于TE-OB4LAC模型的授權系統(tǒng)的總體設計結(jié)構(gòu)主要包括授權服務群、系統(tǒng)管理功能群和行為處理服務器三部分,系統(tǒng)結(jié)構(gòu)圖如圖4所示。 圖4 基于時間和環(huán)境約束的訪問控制系統(tǒng)結(jié)構(gòu)圖 3.1.1 授權服務器群 (1) 訪問請求管理服務器,該服務器負責使應用系統(tǒng)與訪問控制系統(tǒng)建立聯(lián)系,解析合法用戶提出的有效的訪問請求,然后將這些解析好的信息傳遞到授權決策管理服務器中。 (2) 授權決策管理服務器,處于訪問控制系統(tǒng)的核心地位,通過接收解析好的信息,并根據(jù)用戶的崗位角色指派信息、權限信息、時間和環(huán)境約束以及沖突解決情況等決定用戶是否有權限訪問所請求的資源,根據(jù)授權方案做出授權決策。 (3) 沖突管理服務器是授權決策服務器的支撐,當系統(tǒng)的行為引發(fā)沖突時,該服務器決定授權的策略。 3.1.2 管理功能群 (1) 組織管理。主要負責用戶管理、崗位管理和用戶崗位指派關系。 (2) 角色管理。負責管理以及維護與角色相關的信息。 (3) 會話管理。負責監(jiān)督管理用戶會話。如果發(fā)現(xiàn)用戶有惡意操作行為,立即終止會話,阻止信息資源被非法操作。 (4) 權限管理。負責對角色到權限之間多對多指派關系進行管理,該模塊可由信息部門負責管理和維護。 (5) 時間規(guī)則管理。負責對系統(tǒng)的各種時間約束進行管理和維護。 (6) 環(huán)境規(guī)則管理。負責對系統(tǒng)的各種環(huán)境約束進行管理和維護。 3.1.3 行為處理服務器 行為處理服務器包括時間服務器和環(huán)境服務器,負責認證并抽取用戶請求系統(tǒng)時的時態(tài)和環(huán)境信息,并與授權服務器群協(xié)作完成授權。下面簡要介紹時間服務器和環(huán)境服務器。 時間服務器采用時間戳機構(gòu)TSA(Time Stamp Authority)[18]為用戶提供時間戳服務,如圖5所示。 圖5 時間戳申請與驗證 環(huán)境服務器負責抽取并檢驗用戶請求的硬件、軟件、網(wǎng)絡位置、場所物理位置和密碼系統(tǒng)等信息。這里著重介紹環(huán)境服務器中網(wǎng)絡探測器抽取網(wǎng)絡位置的過程,網(wǎng)絡位置包括網(wǎng)絡邏輯位置和網(wǎng)絡物理位置。如圖6所示。 圖6 獲取網(wǎng)絡位置流程圖 TE-OB4LAC模型已經(jīng)在實際中得到應用,并取得了較好的應用效果。當用戶請求訪問系統(tǒng)時,系統(tǒng)會讀取用戶的時態(tài)和環(huán)境信息,并根據(jù)授權方案為用戶授予相應的權限,達到了移動計算環(huán)境下系統(tǒng)動態(tài)授權的目標。系統(tǒng)的界面如圖7所示,被分配廳主任崗位的用戶訪問系統(tǒng),行為服務器獲取用戶的時態(tài)和環(huán)境信息,與授權服務器建立連接,共同完成當前用戶的授權管理。授權完成界面如圖8所示。 圖7 行為服務器界面 圖8 授權列表界面 TE-OB4LAC模型通過對OB4LAC模型進行改進,彌補了原模型在實際應用中出現(xiàn)的不足之處。根據(jù)模型的實際應用效果,與原系統(tǒng)進行對比,TE-OB4LAC模型體現(xiàn)了如下優(yōu)勢: (1) 由靜態(tài)授權到動態(tài)授權的轉(zhuǎn)變。新系統(tǒng)改變了原系統(tǒng)永久授權的模式,在時間和環(huán)境約束下,為崗位行為和角色行為進行授權,從而實現(xiàn)對用戶權限的動態(tài)控制。 (2) 推動移動計算下電子政務的發(fā)展。合理地設置約束使系統(tǒng)既具備了訪問的靈活性,又防止了嚴重的信息安全問題,系統(tǒng)的安全性進一步提高。 實例驗證了TE-OB4LAC模型的有效性和科學性,本研究為解決移動計算下復雜政務系統(tǒng)授權問題提出了一種解決方法,但還不夠完善。下一步的研究工作主要包括模型中的時間和環(huán)境約束判斷的效率、鑒別用戶行為的可信度以及在政務云環(huán)境下TE-OB4LAC模型的改進研究。 [1] 李鳳華,蘇铓,史國振,等.訪問控制模型研究進展及發(fā)展趨勢[J].電子學報,2012,40(4):805-813. [2] 王于丁,楊家海,徐聰,等.云計算訪問控制技術研究綜述[J].軟件學報,2015,26(5):1129-1150. [3] Joshi J,Bertino E,Latif U,et al.A generalized temporal role-based access control model[J].IEEE Transactions on Knowledge and Data Engineering,2005,17(1):4-23. [4] Covington M,Long W,Srinivasan S.Securing context-aware applications using environment roles[C]//Proceedings of the 6th ACM Symposium on Access Control Models and Tech-nologies.Chantilly,Virginia,USA:ACM Press,2001:10-20. [5] Ray I,Kumar M,Yu L.LRBAC:a location-aware role-based access control model[C]//Proceedings of the Second International Conference on Information Systems Security (ICISS2006).Kolkata,India:Springer-Verlag,2006:147-161. [6] Damiani M L,Bertino E,Catania B.GEO-RBAC:A spatially aware RBAC[J].ACM Transactions on Information and System Security,2007,10(1):1-42. [7] 穆玲玲,高燕燕.基于權限屬性的UCON_(ABC)訪問控制模型[J].計算機應用與軟件,2015,32(6):296-299. [8] 沈海波,陳強,陳勇昌.受限環(huán)境下基于權能的訪問控制研究[J].計算機應用研究,2016,33(5):1-5. [9] 熊厚仁,陳性元,費曉飛,等.基于屬性和RBAC的混合擴展訪問控制模型[J].計算機應用研究,2016,33(7):2162-2169. [10] 董理君,余勝生,杜敏,等.一種基于環(huán)境安全的角色訪問控制模型研究[J].計算機科學,2009,36(1):51-59. [11] 彭友,鞠航,王延章.復雜時空約束條件下基于角色的轉(zhuǎn)授權模型研究[J].大連理工大學學報,2013,53(3):462-468. [12] 彭友,李懷明,王延章.電子政務系統(tǒng)中基于組織的訪問控制方法和模型[J].系統(tǒng)管理學報,2014,23(4):481-488. [13] 李懷明.電子政務系統(tǒng)中基于組織的訪問控制模型研究[D].大連:大連理工大學,2009. [14] Li Huaiming,Tian Ke.Research of Reliability-Based Four Levels Access Control Model[C]//Proceedings of 2009 IEEE International Conference on Network Infrastructure and Digital Content.Beijing University of Posts and Telecommunications,2009. [15] 李鳳華,王巍,馬建峰,等.基于行為的訪問控制模型及其行為管理[J].電子學報,2008,36(10):1882-1890. [16] 丁鋒,陳雪龍,王延章,等.基于組織的訪問控制系統(tǒng)授權驗證單層關系模型[J].大連理工大學學報,2011,51(1):132-136. [17] Park J,Sandhu R.Towards usage control models:beyond traditional access control[C]//ACM Symposium on Access Control MODELS and Technologies.DBLP,2002:57-64. [18] RFC3161.Internet X.509 Public Key Infrastructure Time-Stamp Protocol (TSP)[S].2001.2 訪問控制策略和機理
2.1 行為狀態(tài)的判定
2.2 授權方案的設計
3 TE-OB4LAC模型在電子政務系統(tǒng)中的應用
3.1 授權系統(tǒng)的總體結(jié)構(gòu)
3.2 模型的實際應用效果
4 結(jié) 語