《電子技術應用》
您所在的位置:首頁 > 通信與網(wǎng)絡 > 設計應用 > Web服務中基于信任的跨域安全認證模型
Web服務中基于信任的跨域安全認證模型
來源:微型機與應用2012年第3期
盧曉霞,,韓堅華
(廣東工業(yè)大學 計算機學院,,廣東 廣州 510006)
摘要: 在分析XCAML和WS-Security安全規(guī)范的基礎上,,設計出一種基于信任的跨域安全認證模型TB-WSCDSA。該模型解決了跨域服務雙方身份認證的問題,,并依據(jù)各自安全域的訪問控制策略和信任計算所需的數(shù)據(jù)和算法,,計算雙方的信任度,根據(jù)信任度閾值比較結果對雙方進行信任評估和授權,,并將結果以信任證書的方式發(fā)送給服務雙方以保證安全通信,。
Abstract:
Key words :

摘  要: 在分析XCAML和WS-Security安全規(guī)范的基礎上,設計出一種基于信任的跨域安全認證模型TB-WSCDSA,。該模型解決了跨域服務雙方身份認證的問題,,并依據(jù)各自安全域的訪問控制策略和信任計算所需的數(shù)據(jù)和算法,計算雙方的信任度,,根據(jù)信任度閾值比較結果對雙方進行信任評估和授權,,并將結果以信任證書的方式發(fā)送給服務雙方以保證安全通信。
關鍵詞: Web服務,;信任,;身份認證;數(shù)字證書

 Web服務憑借其松散耦合,、語言與平臺無關以及開放,、標準化等優(yōu)點,已經(jīng)成為企業(yè)跨平臺應用集成的首選[1],。但是,,Web服務的安全及信任仍然是制約其發(fā)展的最大阻礙。當前,,OASIS已經(jīng)發(fā)布了一系列的安全規(guī)范,,主要有WS-Security規(guī)范、安全斷言標記語言SAML規(guī)范,、可擴展的訪問控制高標識語言XCAML規(guī)范,,而且又提出WS-Trust規(guī)范和WS-Federation規(guī)范提供對信任的支持,通過交換安全令牌在不同安全域通信雙方建立信任[2],,但是這主要還是針對Web服務安全的身份認證,,并沒有提供如何進行信任評價和信任決策。
 本文針對OASIS發(fā)布的關于Web服務安全規(guī)范不能滿足服務雙方利用信任信息進行信任評估和決策授權的問題,,將信任機制引入身份認證及訪問控制中,提出了一種Web服務中基于信任的跨域安全認證模型TB-WSCDSA(Trust-Based Cross-Domain Security Authentication of Web Service),。該模型能夠解決服務提供方與請求方跨域認證的問題,。它將PKI數(shù)字證書與XCAML相結合,通過一個可信的第三方機構對不同安全域的服務雙方進行認證,,利用雙方的直接交互經(jīng)驗及各自域內(nèi)其他證人的推薦信任信息,,計算信任度,,并與自身預先設定好的信任標準或信任度閾值進行比較,然后根據(jù)比較結果進行決策和授權,。決策結果保存在信任證書中,,發(fā)送給服務請求方和提供方,作為雙方信任并進行通信的依據(jù),。
1 模型框架
 TB-WSCDSA模型是基于XCAML和PKI數(shù)字證書的,。圖1是TB-WSCDSA模型圖。首先,,服務請求方及提供方都從本域內(nèi)的CA認證機構獲取自己的數(shù)字證書,,這樣才能在交互過程中進行彼此認證??尚诺牡谌秸J證機構使用PKI的CA認證,。這里認定,可信的第三方認證機構已經(jīng)與雙方的根CA(信任錨)建立信任關系[3],。
 服務雙方認證完成后,,將各自的數(shù)字證書以及第三方認證結果發(fā)送到模型中的認證模塊進行驗證。在確認服務雙方的身份后,,模型的XACML的訪問控制模塊通過計算信任度決定是否發(fā)送信任證書給請求方或提供方,。最后,請求方使用該信任證書向提供方請求服務,,提供方使用該信任證書決定是否提供服務,。

 

 

2.1 認證
 身份認證是TB-WSCDSA模型的基礎,只有確定了服務雙方的身份以后,,才能夠根據(jù)相關信任信息進行信任評估和授權決策,。該認證過程是跨安全域的,包括服務請求方,、請求方所在域的根CA機構(信任錨),、服務提供方、提供方所在域的根CA機構(信任錨)[3],、已經(jīng)與雙方根CA建立信任關系的可信的第三方信任機構以及TB-WSCDSA,。圖3顯示了認證過程。認證過程如下:
?。?)服務請求方及提供方從各自所在安全域的根CA機構獲得本域數(shù)字證書,。
 (2)取得本域數(shù)字證書后,,請求方加密發(fā)送數(shù)字證書給提供方,,提供方收到后用自己的私鑰解密,并通過本域的根CA發(fā)送到可信第三方機構進行認證,,提供方同樣將自己的數(shù)字證書發(fā)送給請求方進行認證,。
?。?)可信的第三方CA機構對服務雙方認證完成后,返回認證結果,。
?。?)服務請求方和提供方從第三方接收到認證結果后,將對方的數(shù)字證書及第三方認證結果打包加密發(fā)送到TB-WSCDSA模型的認證模塊,;認證模塊驗證服務雙方提供的證書及結果,,完成認證。

2.2 訪問控制策略管理
 服務雙方在完成認證后將結果發(fā)送到TB-WSCDSA模型的認證模塊,,認證模塊通過請求方域及提供方域證人的請求推薦信任,、雙方的數(shù)字證書以及第三方認證結果后,將服務請求轉發(fā)到訪問控制模塊,,再對雙方進行信任評估和決策,。訪問控制模塊包括策略管理、信任度計算和決策授權3個部分,。
 策略是XACML的核心,,XACML定義了標準的策略語言模型[1]。在TB-WSCDSA的策略模型中,,<target>標簽是該策略集(策略,、規(guī)則)的索引,用來查找某個訪問控制請求所適用的策略集或策略規(guī)則,;<subject>標簽定義了適用的訪問請求主體,,如<subject>any subject     </subject>表示適用于任何主體;<resource>標簽定義了適用的客體,,如某個Web服務的WSDL文件,;<action>標簽定義了主體請求獲得的行為,如Web服務的執(zhí)行(execute),;<condition>標簽是TB-WSCDSA中最重要的標簽之一,,它定義了被授權所必須滿足的信任條件,其中包括信任度閾值(trust_ threshold)和信任度比較函數(shù)(function:trust_comparison)兩個主要部分,。在獲得服務雙方的信任度之后,,利用信任度比較函數(shù)來比較該信任度是否滿足信任度閾值(trust_threshold)的要求,相應地返回true或false,。
2.3 信任度計算
 TB-WSCDSA中的信任計算部分由XML解析器,、數(shù)據(jù)庫和信任處理機三部分組成。TB-WSCDSA計算直接信任度的信息來自于服務雙方,。首先,,服務雙方初始化各自的信任處理機,得到了信任度的計算方法,。信任度計算所必需的數(shù)據(jù)用XML文件發(fā)送到XML解析器中,, 解析后保存在數(shù)據(jù)庫相應的表格之內(nèi)。在計算信任度時候,,信任處理機從數(shù)據(jù)庫中讀取相應的數(shù)據(jù)進行計算,。本文計算的信任度包括雙方直接交互信息(稱為個體緯度)和來自于域中其他證人的信息(稱為社會緯度)。最后將兩者進行綜合[4],。
個體緯度的信任度公式如下:

  
2.4 決策和授權
 決策和授權由PDP完成,,就是根據(jù)訪問控制策略和信任度來決定是否給予授權的過程[5]。其決策的過程如下:
?。?)解析服務雙方的服務請求,,獲取<subject><resource>  <action>和<environment>標簽(<environment>標簽可能不存在)。
?。?)根據(jù)以上4個標簽查找<target>與此相匹配的策略文件policy.XML,。
 (3)如果存在相應的策略文件,,則進行步驟(4),;否則,返回 not-applicable,,訪問控制決策失敗,。
 (4)解析policy.XML中rule的<condition>標簽,,獲得信任度比較函數(shù)trust_comparison和信任度閾值trust_threshold,,請求獲取服務提供方對該服務請求方的信任度requestor_trust以及服務請求方對提供方的信任度provider_trust。
?。?)返回服務雙方的信任度requestor_trust和provider_trust,。
 (6)根據(jù)<condition>標簽中定義的信任度比較函數(shù)trust_comparison,,比較服務雙方的信任度requestor_trust和provider_trust是否大于等于各自的信任度閾值trust_threshold,,如果是,則返回true,;否則,,返回false。
?。?)驗證返回值是true還是false,,如果是true,則返回<effect>標簽值permit,;否則,,返回deny。
最后,PDP將決策的結果發(fā)送給PEP,,PEP將決策結果封裝在信任證書中發(fā)送給服務請求方和服務提供方,。服務請求方利用TB-WSCDSA提供的信任證書向服務提供方請求服務,而服務提供方利用信任證書授權請求方使用服務,。
 本文提出了一種Web服務下基于信任的跨域認證模型TB-WSCDSA,。該模型的優(yōu)點是能夠和OASIS發(fā)布的諸多Web服務安全規(guī)范兼容。TB-WSCDSA與認證代理類似,,是存在于服務請求方與服務提供者之間的中間件系統(tǒng),,TB-WSCDSA代替服務提供方和請求方,完成信任計算和評估工作,,而信任計算的算法,、信任信息及策略又來自于服務雙方。因此,,計算得到的信任度和授權決策結果是服務雙方可信賴的,。服務雙方只需要驗證各自通信時提供的信任證書,就可以實現(xiàn)基于信任的授權和訪問控制,。認證模塊實現(xiàn)了單點登錄的功能,,在認證過程中,認證的客體只要提供一次認證信息,,大大簡化了請求服務和推薦信任信息分享過程中的認證復雜度,。
參考文獻
[1] 馬曉寧,馮志勇,,徐超.Web服務中基于信任的訪問控制[J].計算機工程,,2010,36(3):10-12.
[2] PAPAZOGLOU M P. Web服務原理和技術[M].北京:機械工業(yè)出版社,,2009.
[3] 俞旭.PKI中幾種信任模型的分析研究[C].江蘇省電力安全論壇論文集,,2004:351-356.
[4] SABATER J, SIERRA C. Reputation and social network analysis in multi-agent systems[C]. Proceedings of the 1st International Joint Conference on Autonomous Agents and Multi-Agent Systems. Bologna,, Italy:[s.n.],,2002: 475-482.
[5] 馮曉寧,馮志勇,,徐超.Web服務中跨安全域的基于信任的訪問控制模型[J].計算機應用研究,,2009,26(12):4751-4753,,4767.

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權禁止轉載。