王曉紅
(山西工程職業技術學院 計算機工程系,太原030009)
當前網絡應用已經空前龐大,政府、企業、個人的各種應用如雨后春筍,層出不窮,它在給大家帶來便利的同時,也帶來了不可忽視的威脅和破壞[1],例如上網的數據,或遭刪除或被復制,數據和系統的安全性和自身的利益都受到嚴重的威脅。尤其是在網絡爆發的年代,各個企業及政府由于考慮到多個獨立應用的存在制約了自身的發展,提出了整合的概念,將各個不同的系統通過數據、資源、系統等方式進行整合。但是整合以后,需要考慮整合前的用戶身份和整個大系統的有效權限等問題[2]。因此考慮安全再也不能僅僅從單個安全功能和安全范圍來考慮安全問題,而應從整體上來考慮。基于此本文提出了基于安全域劃分的分布式安全模型。
筆者提出的分布式安全模型主要有如下優點:
1)安全域劃分。本文安全域劃分是邏輯區域的劃分,與具體計算機或地理區域無關,這樣能夠更好地控制用戶訪問邊界,適合應用系統整合,具有動態調整能力。安全域中安全管理各自獨立,解決應用系統整合以后,雖然共享部分資源,但仍然存在私密信息保護。
2)認證機制。通常采用的PKI(public Key Infrastructure)公鑰基礎設施是一種基于公鑰密鑰算法原理的技術,完整的PKI系統必須具有權威認證機構(CA)、數字證書庫、密鑰備份及恢復系統、證書作廢系統和應用接口構成。構建PKI系統也必須圍繞這5大系統來構建,但是遺憾的是該系統并沒有提及分布式的實現方式,尤其是跨安全域的分布式實現方案,本文正是針對這種情況進行了擴展,安全體系具有良好的信息共享、協作能力,能夠從傳輸層和應用層對數據和數據通道進行安全保護。
3)授權機制。授權體系采用了授權回溯的機制,實現了跨域授權;授權體系采用了崗位、角色、用戶聯合的授權機制。利用崗位來授權,方便用戶操作;利用角色來授權,可以減少授權步驟,直接用戶授權,可以使授權更加靈活。
根據2006年1月由全國各級公安機關組織開展了全國范圍內各行業、企業信息系統的基礎信息調研工作,并先后出臺了《信息系統安全保護等級定級指南(試用稿)》、《信息系統安全等級保護基本要求(試用稿)》、《信息系統安全等級保護測評準則(送審稿)》、《信息系統安全等級保護實施指南(送審稿)》等指導性文件[3]。安全域是指同一系統內有相同的安全保護需求,相互信任,并具有相同的安全訪問控制盒邊界控制策略的子網或網絡,且相同的網絡安全域共享一樣的安全策略[4]。廣義點的安全域是具有相同的業務要求和安全要求的系統要素的集合,這些要素包括網絡區域、主機和系統、人和組織、物理環境、策略和流程、業務和使命等諸多因素[5]。
安全域的劃分需要從劃分安全計算域、劃分安全用戶域、劃分安全網絡域三部分綜合考慮[6-7]。
1)劃分安全計算域。根據業務系統的業務功能實現機制、保護等級程度進行安全計算域的劃分,一般分為核心處理域和訪問域,其中數據庫服務器等后臺處理設備歸入核心處理域,前臺直接面對用戶的應用服務器歸入訪問域;{參考:局域網訪問域可以有多種類型,包括:開發區,測試區,數據共享區,數據交換區,第三方維護管理區,VPN接入區等;局域網的內部核心處理域包括:數據庫,安全控制管理,后臺維護區(網管工作區)等,核心處理域應具有隔離設備對該區域進行安全隔離,如防火墻,路由器(使用ACL),交換機(使用VLAN)等。
2)劃分安全用戶域。根據業務系統的訪問用戶分類進行安全用戶域的劃分,訪問同類數據的用戶終端、需要進行相同級別保護劃為一類安全用戶域,一般分為管理用戶域、內部用戶域、外部用戶域。
3)劃分安全網絡域。安全網絡域是由連接具有相同安全等級的計算域和(或)用戶域組成的網絡域。網絡域安全等級的確定與網絡所連接的安全用戶域和(或)安全計算域的安全等級有關。一般同一網絡內劃分三種安全域:外部域、接入域、內部域。
通過上述安全域的劃分,可以把一個復雜的大型網絡系統安全問題轉化為較小區域更為單純的安全保護問題,從而更好地控制網絡安全風險,降低系統風險。但是這種安全域的劃分,須在系統成立之初進行劃分,需要對先用網絡進行大范圍的重構,成本較高。傳統意義的安全域劃分,側重物理網絡的改造,不能滿足當前系統整合的需要。本文提出的安全域劃分是邏輯區域的劃分,安全用戶域劃分與具體物理節點或區域無關,能有效解決整合帶來的上述問題。
筆者所提出的每個安全域主要包含五大模塊:CA模塊、本地資源授權模塊、跨域授權模塊、資源代理模塊、應用系統模塊等。
1)CA模塊。主要負責簽發證書或代理證書、認證證書、管理已頒發證書的機關。制定政策和具體步驟來驗證、識別用戶身份,并對用戶證書進行簽名,以確保證書持有者的身份和公鑰的擁有權。同時管理用戶登陸或認證。
2)本地資源授權模塊。主要負責制定本地資源的授權方案,如:本地XX崗位、XX角色、或XX用戶是否能夠對XX本地資源進行XX操作。
3)跨域授權模塊。主要負責制定跨區域資源的授權方案,如:本地XX崗位、XX角色、或XX用戶是否能夠對XX異地資源進行XX操作。
4)資源代理模塊。主要負責代表用戶進行資源訪問。
5)應用系統模塊。主要負責處理用戶請求,完成后臺系統與用戶的人機交互操作。
每個安全域都擁有自己的唯一的CA模塊和跨域授權模塊,其它模塊可以根據具體應用的需求擁有多個。如圖1所示。

圖1 安全域劃分
本文所描述的安全方案中包含的認證方案和授權方案都是建立在上述安全域劃分基礎上的。
筆者提及的安全域僅僅是一個邏輯上的概念,屬于安全用戶域范疇,并不存在物理上部署限制問題,可以把任意系統劃分進某個安全域。每個安全域之間相互獨立,沒有從屬關系,只存在并列關系,擁有較強的伸縮性能。由于每個安全域的認證和授權都是單獨維護,不僅僅解決了由于系統龐大帶來的集中式管理的開銷,提高了管理效率,也充分保障了信息的保密性,符合當前科學化管理的宗旨。另外,系統每個安全域都提供了安全管理工具,大大提高了系統自動化管理的程度。
筆者提出的認證模型是借鑒于Kerberos認證機制,它要求系統建立一個中心認證服務器,并用以用戶和服務器相互認證。傳統的身份認證僅僅是對客戶端身份的認證,并沒有對服務器本身進行認證,很容易遭到攻擊。另外,kerberos認證機制在網絡上并沒有傳遞密碼,甚至是被加密的密碼,直接利用私鑰和公鑰計算配合,完成雙方的認證。
但是,Kerberos的認證機制并沒有解決大規模的跨域分布式的問題,比如:用戶跨域訪問時的用戶身份問題,僅僅局限于一個安全域下的用戶身份認證和登陸。另外,當前日新月異的網路環境,越來越龐大的系統,并不是一蹴而就,在某種前提下,通過兼并或合并等手段,在系統運行階段,逐一升級或添置,然后又保留自己的相對獨立,這就需要認證系統擁有伸縮性能。
筆者提及的分布式認證機制主要有以下優點:
1)同域中實現用戶的統一管理,每個域都有自己的用戶添加方法和策略,不能跨域決定用戶的注冊權利,這樣解決了系統整合后由于權責劃分不明確帶來的矛盾。
2)不僅支持同域單點登錄,而且還解決了用戶跨域訪問的用戶身份問題。
3)安全體系具有良好的信息共享、協作能力,能夠從傳輸層和應用層對數據和數據通道進行安全保護。
通常情況下,利用證書登陸或訪問時,為了確定用戶身份,需要用戶根據其私鑰、簽名來確認用戶身份,但是私鑰保存在USBkey里面,而且確認用戶身份的位置很多,在用戶訪問過程中涉及到節點都需要對訪問本地的用戶進行身份確認,因此都需要用戶簽名。而用戶輸入密碼提取私鑰只能一次,因此本系統采用了代理證書鏈的機制來保證用戶身份,同時也僅僅只需要用戶輸入一次密碼。具體過程如下:
用戶認證或訪問開始時,由用戶輸入密碼,簽署代表用戶身份的信息或代理證書及私鑰,當后續工作需要簽署用戶信息時,則由代理證書的私鑰來代表用戶簽署信息。各個節點需要驗證用戶身份時,根據代理證書鏈表,來驗證用戶。該方式利用代理證書的私鑰來簽署信息同時具有該用戶訪問的唯一憑證,不可偽造,具有一定的抵賴性、保密性。代理證書鏈的運行機制與現實當中的代理有相同功能,比如:當你需要找人幫你辦某些業務的時候,需要您編寫自己的委托書,授予XX人XX權限,并簽名,且僅簽一次。如圖2所示。

圖2 代理證書鏈
通過上述過程,用戶在訪問過程中,每個服務器的每個線程甚至每個請求,都會很清楚地知道是誰在訪問。當某個跨域服務器面臨跨域用戶訪問時,會利用現有安全框架,逆向驗證代理證書,最后主動要求用戶所在CA進行驗證,從而保證用戶身份不可偽造。這里的CA模塊分為三層,形狀如一棵倒立的樹,樹根(Root)為認證的起點;第二層為各個安全域的CA模塊,它的證書由Root CA頒發,職責為簽發第三層的用戶和服務器證書。由于每個CA服務器證書由整個系統的root證書頒發,所以它們之間相互信任。
通常的認證系統都支持SSL協議,通過該協議可以解決信道的安全問題,但是如果根據每個用戶證書建立安全信道,顯然系統無法承載這樣的開銷。因此系統提出,第一,在服務器之間利用服務器證書建立安全信道,解決信息安全問題;第二,在此基礎上利用隧道機制解決用戶身份問題,從而保證在整個系統中每個一個步驟能夠確定操作的用戶身份。
“隧道”不是一個物理概念,僅僅是一個邏輯上的協議,隧道的擁有者即任務的執行者,系統可以利用隧道來識別用戶的身份,唯一的開銷僅僅增加隧道的標識,如圖3所示。這樣不僅僅減輕了服務器的載荷,實現了對物理連接或SSL通道的重復利用,也提升了分布式系統整體性能,在不降低系統安全性的同時,縮短了用戶或服務器訪問系統的時間。

圖3 安全隧道
分布式環境下的授權,除了需要解決不同安全域的用戶訪問異域資源的問題(跨域訪問)以外,還需要解決不同安全域用戶為了協同工作,組成一個虛擬協作環境的問題(虛擬組織問題),該環境下,可以允許組員動態加入和退出,并擁有不同權利。
本文提出的分布式授權方案是建立在X.509V4提出的 PMI(Privilege Management Infrastructure,特權管理基礎設施)公鑰認證的授權模型基礎上的,并對 RMBC(Role-Based Access Control)進行了擴展。PMI解決的是用戶權限保存問題,利用屬性證書(Attribute Certificate,AC)保存用戶的權限或角色及其權限擁有的時間,RBAC解決的是分布式環境下委托授權的問題。但是通常意義的委托授權是分布式的基于角色的委托授權,并不能解決跨域委托授權的問題,對于權限細粒度的劃分也過于粗糙。因為角色或崗位的劃分,與用戶一樣是以安全域為邏輯邊界的,本安全域存在的角色和崗位,在其它安全域可能不會存在,就算存在同樣名稱的角色,承擔的任務和功能很可能是不一致的,例如:生物領域的工程師與建筑行業的工程師角色和任務就不一樣。為了解決這個問題,本文提出了更加細粒度的委托模型,基于具體權限的委托模型,一個權限的描述可以由一個五元組構成:What,指目標;Who,指對目標進行動作行為的執行者,該執行者可以是人,也可以是組織、單位,也可以是一個跨域社區或虛擬組織;Action,指對目標采取什么樣的動作;Formula,行為公式,即在什么情況下的行為;Denny,指是否拒絕。這就是一個最小的委托授權的單元。
委托授權過程分為兩種,一種為本域的委托授權,一種為跨域的委托授權。本域的委托授權一般不存在,因為一個域的系統管理員一般只有一個,由他來指定本系統的所有用戶、崗位、用戶或組織授權策略,一般是直接授權。而跨域的授權過程,由于域件的控制各不相同,所以每個域之間制定的策略和資源有所不同,為了使用戶能夠跨域訪問資源,則需要通過委托授權的方式來進行間接授權。

圖4 跨域授權過程
圖4所示為跨域授權過程,實際上包含了兩個部分,第一為本域的委托授權過程,如圖4左邊部分。首先選擇跨域的委托授權的對象,然后根據當前本安全域已經編寫的授權策略,選擇某條授權策略進行轉授,選擇授權的時間限制、禁止限制和義務限制。時間限制:該轉授保持的時間,在某個時間段內,該轉授的權限有效;禁止限制:該轉授在某種情況下不允許進行轉授。義務限制:該轉授運行被轉授的前提條件。第二,本域授權過程,如圖4右邊部分。跨域收到轉授的權利,包括能夠訪問資源、對資源的行為、對資源的行為時間、是否運行再次進行委托轉授等等;從中選擇需要某些用戶需要訪問的資源,選擇用戶/角色/崗位/組織等;最后選擇授權的時間限制,完成。
跨域訪問是指用戶的跨安全域訪問,即本安全域的用戶訪問其它安全域的資源。跨域訪問的關鍵在于權限的檢查。當異地用戶訪問本安全域的資源時,由于本系統并沒有權限對異域用戶進行授權,需要根據用戶所在的安全域尋找其屬性證書,并進行驗證,具體驗證過程實際上就是委托授權的逆過程。首先找到用戶的安全域,然后找到用戶的授權憑據,屬性證書,根據屬性證書找到權限的簽名來源,并驗證有效性,然后依次類推,最后追溯到本安全域的委托授權事件;在對事件本身有效性檢查通過以后,則完成權限檢查過程,最后完成用戶跨域檢查的動作。
當前很多系統都建立以角色為依據的授權策略,不可否認基于角色的授權策略的優勢,但是這種類型嚴重混淆了大規模分布式系統中實際運行中崗位和角色的區別。崗位是在組織架構下的精細崗位劃分,是業務流程控制、業績考核、預警體系的基礎,不同的機構、部門下的同一職務是作為不同的崗位的。它的引入是為了讓系統擁有更好的系統擴展,滿足現實復雜的組織環境。角色實際上有些相當于崗位權限分類的概念,即具有同樣功能權限的崗位集合在一起,這樣可以減少權限設置的工作量。它是系統功能權限設置的基礎,是系統權限功能的初步劃分。但是他給實際應用人員帶來迷惑,無法區分各自的職責,有可能系統中兩個崗位擁有的權限是一樣的,這個很常見。
鑒于上述現象,筆者提出了以崗位和角色為基礎,創建基于崗位和角色訪問控制策略。在崗位和角色間建立多對多的關聯,在用戶和崗位間建立多對多關聯。同時支持面向崗位、角色、用戶、組織的授權,為應用提供了更加靈活的、符合實際管理經驗的方案。
分布式系統的部署分散性、異構性及開放性,使得網格節點之間的通信,常常給攻擊者提供可乘之機。因此,節點之間,域之間的通訊的安全、用戶訪問權限限制尤為重要。
本系統已經在上海16個檔案館及其相關區縣進行了實施,在原有系統的基礎之上,對現有系統進行了整合,采用了16個安全域,讓每個檔案館進行單獨安全管理,解決了由于系統整合帶來的由于權限管理混亂導致的涉密信息泄露等問題。
[1] Alguliev R M,Imamverdiyev Y N.E-Government information security management research challenges[C]∥AICT 2009International Conference on Application of Information and Communication Technologies,Baku:2009:1-5.
[2] Wanhua Xu,Guoping Zhou.The Development of E-government in China:Challenges and the Future[C]∥WiCOM'08 4th International Conference on Wireless Communications,Networking and Mobile Computing,Dalian:2008:1-3.
[3] 國務院信息化工作辦公室.電子政務信息安全等級保護實施指南(試行)[Z].2005.
[4] 沈昌祥.信息安全保障建設中的幾個焦點問題[R].北京:國家信息化專家咨詢委員會,2007.
[5] 郭啟全.國家信息安全等級保護制度的貫徹與實施[R].北京:公安部公共信息網絡安全監察局,2007.
[6] 張海亮.威脅型安全域劃分指標及方法的研究和案例分析[D].重慶:重慶大學,2007.
[7] Seongyoung sohn,Jinoh Kim,JungChan Na.Design of network security policy information model for policy-based network management[C]∥The 7th International Conference on Advanced Communication Technology(ICACT2005),Phoenix Park:2005:701-705.