摘 要:在網格中,主機存在于不同的信任域中,在主機間建立互信是實現資源共享、協同工作的前提,為資源的訪問建立規則是實現資源安全的基礎。網格中的訪問控制算法旨在解決上述兩個問題。結合安全數據庫的訪問控制策略,融入基于身份和基于行為的訪問控制思想,實現了以任務發起者為中心的網格虛擬組織的跨域訪問控制,并對其中建立互信的核心算法進行了BAN邏輯推理。
關鍵詞:網格安全; 訪問控制; 虛擬組織; BAN邏輯; 信任策略
中圖分類號:TP309 文獻標志碼:A
文章編號:1001-3695(2008)07-2155-04
Multidomain access control algorithm based on grid virtual organization
CUI Qiang1,2, LIU Peng2, PAN Jin1,3, ZONG Rui2
(1. Network Security Countermeasure Laboratory, Xi’an Information Institute, Xi’an 710106, China; 2.PLA Research Center for Military Grid Technology, PLA University of Science Technology, Nanjing 210007, China; 3.Xidian University, Xi’an 710071, China)
Abstract: In grid environment, different users belong to different trust domains. In order to achieve the goal of sharing resources and working coordinately, it is very necessary to build a trust model. Besides, it is of equal importance to make access managements which can assure safety of resource. The access control algorithms focused on the two above problems. This paper designed a novel algorithm into which access control based on identity and taken behaviors, and considered the policy of access control used in secure database in it too. Multidomain access control built by the resource of mission could work well by using this new algorithm whose correctness was proved by the BAN logic.
Key words: grid security; access control; virtual organization (VO); BAN logic; trust policy
網格是在不改變現有網絡格局的情況下,為了滿足不同組織間資源共享、協同工作的需要而形成的一種技術[1]。但是,網格中不同的用戶所處的環境不同、擁有的資源不同,各種不同資源的相關性低,安全的需求各異,這些均導致了網格資源管理的困難[2]。所以,在網格中必須擁有相應的訪問控制機制,用于解決不同信任域(環境)間的互連互通問題,同時保護網格用戶所擁有的資源。
訪問控制就是當計算機系統所屬的信息資源遭受未經授權的操作威脅時能夠提供適當的管理以及防護措施,保護信息資源的機密性與正確性。傳統計算機網絡中的訪問控制算法已經比較成熟。在網格環境下實現訪問控制,需要利用網絡訪問控制中成熟的思想,同時適應網格動態性和多域性的特征。
1 相關工作
網格環境下的訪問控制方法可以分為兩大類:
a)基于對象的訪問控制。其主要思想是將不同的對象作為訪問控制的參照物,根據參照物的情況進行訪問權限的控制。具體方法主要包括基于身份的訪問控制、基于資源的訪問控制和基于角色的訪問控制。在Globus項目[3]中采用的RoleMap就是基于身份的一種訪問控制。要求每一個網格中的主體都必須要在它需要訪問資源的本地擁有自己的賬戶,當資源接收到用戶的請求后,將其映射為本地用戶,行使本地用戶相應的權利。這種做法最大的弊端在于缺乏動態性,很難勝任多變網格環境下的訪問控制工作。基于資源的訪問控制多用于信息網格的數據庫訪問控制中,它將數據庫的數據進行安全等級劃分[4],根據用戶本身的安全等級判斷信息的流向。這種方法動態性強,但不方便資源擁有者對資源的自主管理。基于角色的訪問控制[5]是基于身份的訪問控制的一種改進,其實質就是在身份與資源之間建立一個中間層。該中間層相對固定,且與身份與資源之間同屬于多對多的映射,這種映射使得原本基于身份的訪問控制的動態性有所增加,同時降低了RoleMap文件的管理難度。其主要弊端是角色的定義難度較大,且角色的動態性不強。
b)基于經驗的訪問控制。其主要思想是將已經存在經驗模型應用到訪問控制中。具體方法包括基于行為的訪問控制和基于信任[6,7]的訪問控制兩種方法。基于行為的訪問控制方法又可分為兩類,即基于行為目的[8]的和基于行為結果[9]訪問控制方法。基于行為目的的方法需要根據用戶提供的行為目的給予適當的權限,資源所有者根據用戶行為的特征判斷其目的是否與聲明的目的相同,從而及時地改變用戶的權限。基于行為結果的方法從某種角度來說它與基于信任的方法相同,都是根據行為的結果對此用戶進行評價,方便對其當前任務的后續工作或此用戶的后續任務進行權限管理。
判斷安全算法的正確性影響較大的方法主要有三種[10]:(a)BAN類邏輯方法[11]。它開創了安全算法形式化分析的先河,并且還在不斷的發展,其最主要的特點是在“相信”的基礎上,利用初始條件和公理規則進行邏輯推理,方法簡單易懂。(b)串空間方法[12]。它結合定理證明和協議跡方法,結合公理集合論形成一種嚴密的安全方法形式化分析技術。該技術能夠分析構造攻擊,揭示安全方法本身的缺陷,但是分析復雜,容易產生疏漏。(c)CSP(通信順序進程)建模方法(剛剛發展起來的一種分析方法)。它是根據動作和時間順序的不同進行分析的。此種方法還不是很成熟。在網格環境下,不同域主機之間進行寫作的前提就是“相信”,所以將采用BAN邏輯的方法進行證明。
本文將基于對象的訪問控制思想與基于經驗的訪問控制思想結合起來,配合安全數據庫訪問控制算法的思想,最終實現一種以虛擬組織(VO)為基礎的,跨域的、動態的訪問控制。
2 訪問控制算法實現
VO是網格的核心思想之一。它由遵守資源共享規則的一組個體、機構組成,是實現資源共享、協同工作的基本單位,其最大特點為異構的統一和動態的集成。本文所涉及的VO是由任務發起者組建,并能夠在異構的網絡環境中完成安全授權和安全會話。為方便分析問題,將網格環境定義如下:
a)網格中的任何主體都有可能成為網格的破壞者,包括CA(也就是說網格中除本地主機和本地CA外,不存在完全信賴的主體關系);
b)每一個CA都進行了必要的改造,如增加信任數據庫等;
c)網格主體和客體是多級別的,其安全需求不同。
其結構示意圖如圖1所示。
2.1 算法代號說明
訪問過程分別經歷了強制訪問控制階段、自主訪問控制階段、形成狹義VO和形成廣義VO這四個階段。以網格用戶(CA1+n)創建的進程(CA1+n+SUB1)訪問資源(CA2+m+OBJ1)為例。
訪問控制中涉及了不同信任域、不同信任域中的不同的CA和不同的用戶(主體和客體)。為了描述方便,定義如下:
a)網格中除CA外的任何一個用戶都可以由CAi+UID來表示。其中:CAi為網格中的CA的編號或CA的名稱;UID為網格中的用戶編號;“+”表示字符串的連接。
b)網格中的資源都可以表示為CAi+UID+OBJj,網格中的主體都可以表示為CAi+UID+SUBj。
c)網格中用戶的安全級別可以由S(CAi+UID)表示,其產生的主體的安全級別S(CAi+UID+SUBj)≥S(CAi+UID),其擁有的資源(客體)的安全級別S(CAi+UID+OBJj)≥S(CAi+UID)。
d)網格中的CA都存有CA信任數據庫和用戶信任數據庫,分別用DBCA和DBU表示。DBCA中存儲的數據記錄的格式為[CA的地址(ADCA),CA的公鑰(PKCA),CA的信任級別(TRCA)];DBU中存儲的數據記錄的格式為[CAi+UID,ADCA,PKCA,用戶的信任級別(TRU)]。
e)用戶自主授權形式下的RoleMap中的記錄的格式為[CAi+UID,Uname,Policy]。
f)PK代表的是公鑰,如PKCA1代表的是CA1的公鑰;SK代表的是私鑰,如SKCA1代表的是CA1的私鑰。LPK代表的是臨時公鑰,如LCA2PKCA1+n代表的是CA2給CA1+n頒發的臨時公鑰;LSK代表的是臨時私鑰,使用方法與臨時公鑰相同。
2.2 算法的具體實施過程
向所有VO的用戶發放。用戶在接收到這個信息后,將自己先前生成的Pi帶入到
K(x)
中,每一個合法的資源都可以根據自己生成的隨機大質數Pi得到共享密鑰k。
(11)由于不同資源的安全級別可能不同,采用相同的共享密鑰將造成安全威脅。在獲得共享密鑰的同時,每一個資源要進行如下的計算:KSO=hash(kPi)。這將成為任務發起者(CA1+n)與Oi之間獨享的共享密鑰。
(12)當VO中的成員Oj增加之后,VO發起者(CA1+n)僅僅需要計算A′(x)=A(x)×(x-PJ),并將新的K(x)=A′(x)+k發送給新加入的用戶即可。當VO中的成員減少后,VO發起者(CA1+n)需要重新計算A(x),重新選擇K′≠k,并計算k(x)發送到每個VO。
到此為止,狹義VO已經形成。
4)由狹義VO形成廣義VO
在網格中經常會出現多級服務的現象。多級服務指的是為了完成某一任務,協作方需要將其分領到的任務分配給其他任務輔助完成。在圖2中,總任務分派出去的一級任務1需要其他資源的支持才能夠完成任務,此時它將這一分派任務繼續分派給各個二級任務,這就形成了多級別的任務同時為總任務效力。從這個角度看,所有一級、二級任務同屬于一個VO,即廣義VO,而其中為了完成某一等級的任務集合又形成了不同的狹義VO。
3 算法形式化分析
形式化分析是將算法中的各個步驟進行形式化表述,同時按照一定的公理集,對過程的結果進行分析。這里采用BAN邏輯的分析方法對上述算法中有關建立互信的部分進行分析。分析并不是按照上述步驟嚴格進行的,可能是一個或者是多個步驟的綜合。
3.1 BAN邏輯核心公理的擴展
上述核心算法的建立是基于信任關系的一種考慮,即信任關系在不形成回路的情況下是一種偏序關系,算法中主要是利用了信任的傳遞性來實現的。所以,實現此算法的前提就需要在CA間建立比較完善的信任模型,用來知道信任數據庫的建設完成和信任等級閾值選取,具體方法可以參考文獻[14]進行。
4 結束語
網格安全是網格得以繼續發展的前提條件,訪問控制是網格安全的重要內容。本文通過綜合前人的思想完成了一種跨域訪問控制的新方法。該方法改變了Globus中授權完全依靠RoleMap方式的死板模式,使得授權動態得以實現,具有一定的借鑒意義。
參考文獻:
[1]FOSTER I, KESSELMAN C, NICK J M, et al. Grid services for distributed system integration[J]. Computer, 2002, 35(6): 37-46.
[2]FOSTER I, KESSEKAN C, TSUDIK G, et al. A security architecture for computational grid[C]//Proc of ACM Conference on Computer and Communication Security.New York:ACM Press,1998: 81-92.
[3]The Globus Security Team.Globus toolkit version 4 grid security infrastructure: a standards perspective[EB/OL]. (2005-12). http://www.globus.org/toolkit/docs/4.0/security/GT4GSIOverview.pdf.
[4]SANDHU R S.Latticebased access control[J].Computer,1993,26(1):9-19.
[5]SANDHU R, COYNE E J, FEINSTEIN H L, et al. Role based access control models[J]. IEEE Computer, 1996, 29(2):38-47.
[6]LIN Aizhong, VULLINGS E, DALZIEL J. A trustbased access control model for virtual organizations[C]//Proc of the 5th International Conference on Grid and Cooperative Computing Workshops.Washing ton DC:IEEE Computer Society,2006:557-564.
[7]TRAN H, WATTERS P, HITCHENS M, et al. Trust and authorization in the grid[C]//Proc of International Confrence on Pervasive Servies.2005:443-438.
[8]YAN T W,JACOBSEN M, HECTOR G M,et al. Form user access pattern to dynamic hypertext linking[J]. Computer Networks and ISDN Systems, 1996,28:1007-1014.[9]XIONG Li, LIU Liu. A reputationbased trust model for P2P ecommerce communities[C]//Proc of the 4th ACM Conference on ElectronicCommerce.New York:ACM Press,2003:228-229.
[10]卿斯漢.安全協議20年研究進展[J].軟件學報, 2003, 14(10):1740-1752.
[11]BURROWS M, ABADI M, NEEDHAM R. A logical of authentication[J].ACM Trans on Computer Systems,1990,8(1):18-36.
[12]FABREGA F J T, HERZOG J C, GUTTMAN J D. Strand spaces: why is security protocol correct? [C]//Proc of IEEE Symposium on Security and Privacy.[S.l.]:IEEE Computer Society Press, 1998:160-171.
[13]ZOU Xukai, DAI Yuanshun,RAN Xiang. Duallevel key management for secure grid communication in dynamic and hierarchical groups[J]. Future Generation Computer Systems,2007,123(6):776-786.
[14]MARSH S. Formalizing trust as a computational concept[D].[S.l]:University of Stirling, 1994.
[15]PEREIRA A L, MUPPAVARAPU V, CHUNG S M. Rolebased access control for grid database services using the community authorization service[J]. IEEE Trans on Dependable and Secure Computing, 2006,3(2):156-166.
[16]DEMCHENKO Y,De LAATC,CIASCHINI V. VObased dynamic security associations in collaborative grid environment[C]//Proc of International Symposium on Collaborative Technologies and Systems.Washingten DC: IEEE Computer Society,2006:38-47.
[17]卿斯漢.安全協議的設計與邏輯分析[J].軟件學報,2003,14(7):1300-1309.
注:“本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文。”