3.3 采用身份認證和消息的數字簽名應對欺詐問題
針對欺詐問題,可以使用身份認證和消息的數字簽名來解決。身份認證保證授權的用戶能夠訪問被授權的資源。由于在企業級SOA中身份認證不局限于單一安全控制域,而安全斷言標記語言(Security Assertion Markup Language,SAML)標準提供了不同安全域之間認證的交互,以一種可為用戶調用的Web 服務所接受的方式表達用戶的真實性,并且,SAML基于XML的標準,為以標準方式描述安全性信息提供了一個框架。通過一個標準的認證過程,多方可以達成一致,使用一組給定的標準來對一組指定的用戶進行身份驗證,參加這個過程的安全域組成一個身份聯邦(Identity Federation)。接下來,SOAP消息被傳遞給目的Web服務,并附加上一個SAML斷言。但是需要注意SAML斷言不依賴于聯邦身份驗證過程。
數字簽名用于保證消息真正創建者身份的真實性以及消息在發送系統到接受系統之間傳輸時未被篡改。數字簽名是對身份和消息內容進行惟一的處理得到的一個基于密鑰的非常大的數,是一種消息級的安全措施,它結合了數字證書密鑰和加密等安全方法。如果消息被改變了,那么惟一的數字簽名將不再與密鑰和用于創建密鑰的原始消息相匹配。為此,數字簽名提供了個不可否認性,例如,數字簽名可以證明你的供應商收到的電子訂單確實是由你發出而且在傳輸中沒有被篡改過。針對企業級SOA,可以使用專門制定的處理XML消息級別的XML數字簽名標準。
四 總結
雖然關于SOA技術的標準已經有很多了,專門針對安全問題而制定的標準卻屈指可數。OASIS技術委員會制定了一系列技術標準,WS-Security是迄今為止得到認可的安全性標準集合的總稱,包括WS-Security(描述如何將XML加密和XML簽名應用于SOAP文檔或信息)、WS-Trust(應用WS-Security標準傳輸密碼、數字證書以及SAML斷言等安全標識)、WS-SecurityPolicy(對哪些人被允許訪問某個服務以及訪問方式做出規定,并對認證方式的類型和/或所需要的加密等級做出限制)、WS-Federation(根據WS-SecurityPolicy 中描述的服務規則,應用WS-Trust 中提到的被傳輸的安全標識,通過Web服務的認證)、WS-SecureConversation( 按照WS-Security標準,實施WS-SecurityPolicy中所描述的策略的方法)等?,F在,SOA領域的“物質基礎”已塵埃落定,而“上層建筑”仍在建立之中。
需要注意的是,就像在IT的其他領域中一樣,若想保障基于SOA架構業務的安全性,就需要有大量開銷。因為在到達目的地之前,每條消息都必須經過好幾個地方,另外證書文件可能會很大,從而給網絡造成很大的負擔,而且整個過程往往會降低性能。但遺憾的是,為了安全這些開銷和負擔是必不可少的。
此外,如果想保護牽涉多家企業的龐大Web服務網絡,每家企業必須就采用的技術、甚至安全策略達成共識,因為如果合作伙伴的員工使用弱密碼來訪問系統,那么即使要求本企業的員工使用生物特征識別技術和物理令牌也是毫無用處的。
原文轉自:http://esoft.ctocio.com.cn/236/12880236_2.shtml