摘要:計算機網絡是信息社會最重要的基礎設施。針對園區網絡的安全控制問題,提出了基于公鑰基礎設施和基于角色的訪問控制模型的區域網絡安全模型,并說明了系統的工作過程和模型的特點。試驗表明基于該模型的信息系統可提供高水平的安全服務。
關鍵詞:公鑰基礎設施;基于角色的訪問控制;安全區域網絡;模型
中圖分類號:TP393文獻標識碼:A文章編號:1009-3044(2008)36-2874-03
Area Network Security Model Based on PKI and RBAC
WANG Bao-Ping1,CHENG Xin-dang2,ZHANG Xin-gang3
(College of Computer Information Technology,Nanyang Normal University, Nanyang 473061,China)
Abstract: Computer network is the most important infrastructure in information society.In this article we bring forward a area network security model based on public key infrastructure and role based access control model to solve the security access control problems in region network and describe its characteristics.The information system based on this model can provide high-level security service.
Key words: public key infrastructure; role based access control;security area network;model
1 引言
隨著社會信息化水平的迅速提高,以通信和計算機為基礎的網絡技術成為信息社會最重要的基礎設施,社會信息化水平成為綜合國力的象征和各國爭奪的制高點。信息就意味著財富和力量,然而承載這些信息的計算機網絡平臺卻并不是足夠安全的,網絡系統的漏洞和惡意的入侵者對信息安全構成了巨大威脅。一個安全的信息系統應該能滿足三個基本特性:保密性(Confidentiality)、完整性(Integrity)和可用性(Availabiltiy)(簡稱CIA要求),并且要有完善的訪問控制措施。本文結合鑰基礎設施(Public Key Infrastructure,簡寫為PKI)技術和基于角色的訪問控制模型(Role-Based Access Control ,簡寫為RBAC),提出了一個區域網絡安全模型,以滿足信息系統的CIA要求,并能提供高效、完善的信息系統訪問控制服務。
2 PKI技術概述
PKI是一個包括硬件、軟件、人員、政策和策略的復雜系統,用來實施基于公鑰密碼體制的證書產生、存儲、發行和撤消服務,使CA的建設有一個開放性的標準,CA之間能夠通過相互認證而擴充認證范圍。PKI能保證通信過程中用戶與通信對方相互確認身份的真實性,對通信的相關電子數據進行加密,保證數據內容不被非法被篡改和泄露。PKI是一種基礎設施,它提供了網絡安全服務的標準接口,只要符合這個接口標準,應用就可以和該系統很好的集成,使用該系統提供的安全服務而不需對原系統做大的修改。PKI一般提供了三種服務:1) 機密性服務(Confidentiality):公鑰密碼技術的最大優點是無須預先建立通信雙方的關系,而對稱密碼技術則要求通信雙方必須預先經過帶外方式交換密鑰,通信者需要保持大量的密鑰,這對密鑰保管和更新是一個巨大的挑戰。現有的公鑰密碼算法比稱算法的處理速度慢很多,如常用的RSA算法比DES算法慢兩個數量級以上,因此PKI使用公鑰密碼技術實現通信雙方會話(對稱)密鑰的交換,然后使用這個對稱密鑰來加密解密傳輸資料,較好的解決了安全和效率的問題。常用的對稱密鑰算法有DES、Triple DES和IDEA等。2) 完整性服務(Integrity):保證信息在傳輸的過程中不受網絡環境自身因素(如電子噪聲、介質老化等)或入侵者的攻擊而改變,即保持信息的真實性,只有合法授權的用戶才能改變數據。常用的有哈希(Hash)函數(如MD5和SHA1)以及消息認證碼(MAC)機制。3) 認證服務(Authentication):包含實體認證和資料來源認證。公鑰密碼技術通過可以信賴的第三方建立公鑰的真實性,公鑰證書(Certification)把公鑰持有者的身份信息和公鑰綁定在一起,并用認證權威機構的私鑰進行數字簽名。4) 非否認服務(Non-repudiation):利用公鑰密碼算法結合哈希函數實現數字簽名服務。常用的公鑰密碼算法有:基于整數的質因子分解以及冪運算和模數運算的RSA算法、基于離散對數函數的DSA算法、基于橢圓曲線離散對數運算的橢圓曲線RSA(ECRSA)和橢圓曲線DSA(ECDSA)。
3 RBAC(Role-Based Access Model)模型的特點
信息系統安全的核心問題是訪問控制,常用的控制方式有兩種:1) 自主訪問控制(DAC):該機制強調客體(Object)的擁有者可以自主決定將客體的訪問權限授予其它主體(Subject),在大規模系統中會導致權限管理的混亂,安全管理員最終將不能有效控制整個系統安全。訪問控制列表(ACL:Access Control List)是最常見形式。2) 強制訪問控制(MAC):系統給所有的主體和客體都分配一個訪問屬性,包括主體與客體的密級和范疇,系統通過對比主體和客體的訪問屬性來控制主體對客體的訪問。強制訪問控制有兩個特性:① 簡單安全特性:主體能對客體進行讀訪問的必要條件是主體的安全級別不小于客體的安全級別,主體的范疇包含客體的范疇,即向下讀。 ②*特性:主體能對客體進行寫訪問的必要條件是客體的安全級別支配主體的安全級別,客體的范疇支配主體的范疇,即向上寫。Bell-LaPadula(簡稱BLP)是一個有代表性的計算機多級安全模型。
RBAC模型的核心概念是用戶(User)、角色(Role)、權限(Permission)和會話(Session),和傳統訪問控制模型中將用戶和訪問權限直接關聯不同,在RBAC模型中是將對客體的訪問權限授予角色,用戶通過分配到角色而擁有對客體的訪問權限,用戶的變動性很大,而角色卻是相對穩定的,因而RBAC模型特別適合于商業結構和其它分層組織的機構。RBAC模型根據功能分為4種:1) RBAC0(又稱為Core RBAC模型)是最簡單的模型。2) RBAC1模型(又稱為Hierarchy RBAC)的角色組織成層次結構,上下級角色間是偏順關系,支持多級安全。3) RBAC3模型(又稱為Constrainted RBAC)通過角色互斥來實現職責分離(SOD:Separation of duty)。4) RBAC4綜合了前三種的特點,是最復雜的模型。
4 結合PKI技術和RBAC模型構建安全區域網絡模型
國際標準化組織在網絡安全體系結構設計標準(ISO7498-2)中提出了五大安全功能,除前文提到的身份認證服務、機密性服務、完整性服務、非否認服務,還定義了訪問控制服務(Access Control),訪問控制是指對數據流的訪問進行控制進而形成一個可信子網,只有合法的用戶才能以授予的權限訪問信息資源,只有合法的信息流才能進入可信網絡。
信息系統學術界和產業界對安全問題進行了深入的研究,保障信息系統安全的新技術和新手段層出不窮,但同時威脅信息系統安全的技術和手段也處于不斷的快速發展之中,因此信息安全是一個不間斷的過程,是動態的而不是靜態的。一個完整的信息系統按照功能可以分成兩大部分:1) 服務提供系統:主要負責信息的存儲、處理和格式變換。2) 通信系統:主要由通信介質和網絡交換設備組成,負責信息的傳輸。信息安全領域著名的木桶理論指出:木桶能夠容納多少水不是由構成木桶的最長的木板決定,而是由最短的木板決定的;實踐也表明,信息系統的整體安全性是由安全鏈條上安全性最薄弱的環節決定的。因此必須用全局的觀點來研究和解決信息系統的安全問題。本文提出的模型是利用公鑰基礎設施(PKI)來保證信息系統的CIA特性,構建安全通信子網,同時利用RBAC模型來實現對服務提供系統各種資源的訪問控制。模型結構如圖一所示。系統的主要組成:1) 注冊權威機構主要負責接受和驗證用戶的注冊請求,接受或者代表用戶提出證書變更申請。2) 認證權威機構負責證書的生成、證書的數字簽名和證書的歸檔。3) 證書庫負責保存證書和證書作廢列表,響應用戶的查詢請求。4) 實現了RBAC控制模型的訪問控制服務器,負責管理系統的用戶、角色、操作權限及用戶到角色、權限到角色的分配關系,實施職責分離,對用戶的訪問請求進行響應。本模型中的區域指的是RBAC模型控制的范圍內的網絡。
在信息系統中分布式網絡訪問控制技術是未來的發展趨勢。本系統實現基于區域的訪問控制,有兩種實現方式:1) 集中管理模式:RBAC訪問控制數據庫集中存放在區域訪問控制器上,因此區域訪問控制器是整個系統的瓶頸,如果區域訪問控制器不可訪問,那么必然導致資源的可用性問題,為保證系統的可靠性,應在區域內設置多個備份區域訪問控制器,用戶的增刪除、角色層次的改變和授權操作只能在主區域訪問控制服務器上進行,隨后主區域訪問控制服務器立即以增量更新方式向各備份區域訪問控制服務器發布更新報文。所有的訪問控制服務器都可以為用戶提供訪問控制服務,通過認證的用戶生成訪問控制令牌。這種訪問控制方式的弊端是訪問服務器之間的數據庫同步將會占用網絡帶寬,影響因素是同步的頻率和每次傳輸的數據量,同時這一缺點也限制了網絡規模的進一步擴大。模型如圖2(a)所示。2) 把整個RBAC層次結構劃分為不同的子區域,每個區域駐留在子區域訪問控制器上,同時每個子區域訪問控制服務器和上級訪問控制服務器相互注冊,形成一個雙向鏈,由此構建類似于Internet域名解析服務器的分布式訪問控制服務系統,這種方案適用于大規模的網絡,認證的響應時間成為限制網絡規模擴大的因素。同時為了簡化管理提高效率,每個子區域可分派一個用戶做該區域的安全管理員,負責本區域的用戶建立和刪除、角色層次的變動以及授權工作,以提高管理效率。模型如圖2(b)所示。為了保證整個認證系統的安全性,利用PKI實現區域控制服務器之間的認證。
系統工作過程:1)為用戶、信息系統服務器和區域訪問控制服務器生成公鑰證書。2)用戶從個人終端登錄信息系統服務器,服務器要利用PKI驗證用戶的身份真實性。如果驗證通過,則為用戶生成加密數據用的對稱密鑰,繼續下一步;否則拒絕訪問。(3)用戶登錄信息服務器時,用戶名和口令會先送到區域訪問控制服務器,由訪問控制服務器為用戶生成訪問控制令牌并控制用戶的會話過程,訪問不同的資源時主機系統可以驗證令牌的有效性,從而確定用戶的訪問權限,由此實現單點登錄;否則拒絕提供服務,提示用戶無權對資源進行訪問。
本模型用到了下列要素:
s:subject表示在角色內代表用戶進行操作的活動實體。RBAC模型中會話(Session)和主體(subject)是等同的概念。
i,j:role表示角色。
p:privilege 代表對客體的操作權限。
u:user代表訪問系統的用戶。
R[s]:s被授權訪問的角色集合。
A[s]:和s相聯系的活動(ative)角色集合。
E:互斥角色集合。
本模型的特點:
1) 實現了實體認證及數據的加密傳輸,構建了一個可心的信息傳輸通道,實現了安全信息系統的CIA要求,能有效抗擊針對通信子網的惡意攻擊。
2) RBAC的層次模型和社會機構機構的相似性,使得角色層次結構在管理上具有很大優勢,降低了安全管理成本,提高了管理效率。
3) 易于實現最小權原則(Least of Privileges),只授權給角色完成任務的必要權限。
4) 職責分離可以有效杜絕由于利益沖突而導致的欺騙行為,系統定義互斥角色集,作為用戶到角色的分配的限制條件或者是用戶會話在激活角色子集合時的限制依據。職責分離可以為為兩種:
①靜態職責分離:互斥的角色不能分配給同一個用戶,形式化表示為 。
②動態職責分離:互斥的角色可以分配給同一個用戶,但不能在會話中同時激活,形式化表示為
。
5)數據抽象(Data Abstraction),傳統上對資源的訪問權限一般是讀(Read)、寫(Write)和執行(Execute)(如Unix系統),而本模型則可以定義抽象權限,如銀行等系統可以定義借、貸等權限,以使系統的操作更符合實踐要求。
6)角色組織成層次結構,角色間是偏序關系,上級角色包含下級角色,即如果角色屬于授權角色集或者活動角色集,那么該角色的下級角色也屬于該集合,形式化表示為:( ;操作權限授予角色而不能直接授予用戶,用戶通過分配到角色而得到權限,權限可以通過角色層次向上繼承,用戶的變動性大,而角色層次則是穩定的,因而也極大程度地簡化了授權管理,便于系統安全管理員控制整個系統的權限工作。
5 結束語
由于軟件系統(包括操作系統軟件、服務器軟件、數據庫軟件和網絡軟件)漏洞的存在和入侵活動的猖獗,給信息系統帶來了難以估量的損失,因此必須利用技術手段來構建高水平的安全信息系統,提高系統防護水平,把損失風險降到最低程度,最大限度地保障信息系統擁有者的權益。一個合理、安全的信息系統必須是各個環節的安全水平是相近的,否則一個小的漏洞也會使全部的防護形同虛設。本文從系統整體的觀點出發構建了一個安全信息系統的模型,來實現區域范圍內的CIA要求和對資源訪問的有效控制。在項目實施后期,在Windows 2000 Server作為計算平臺,利用.NET作為開發平臺實現了一個原型系統,測試表明,該模型可以在保證操作簡潔性的同時提供較好的安全控制性能。
參考文獻:
[1] Mohan Atreya(美).數字簽名[M].賀軍,譯.北京:清華大學出版社,2003:45-70.
[2] 卿斯漢,劉文清,劉海峰.操作系統安全導論[M].北京:科學出版社,2003:130-145.
[3] John F,Barkley.Anthony V,Cincotta.Role Based Access Control for the World Wide Web[J].National Institute of Standard and Technology, April 1997.
[4] R. Sandhu, E.J. Coyne, H.L. Feinstein, and C.E. Youman.Role based control models [J].IEEE Computer,29(2),February 1996.
[5] David Ferraiolo et Ali.Role based access control(RBAC):Features and Motivations[J].Computer Security Applications Conference, December 1995.
[6] Richard T.Simon and Mary Ellen Zurko.Separation of Duty in Role–based Enviroments[J].Proceeding of the Second New Security Foundations Workshop,June 1997.
注:“本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文。”