隨著Internet 的高速發展,Web 服務技術得到廣泛應用,面向服務的體系架構(SOA,Service-Oriented Architecture)也受到了業界的重視。SOA 以服務的形式組合完成應用功能,具有開放性、可伸縮性、松散耦合性等優點。由于部署在SOA 中的服務可以訪問到系統的敏感信息,因而其面臨的安全問題也日益凸顯。當服務可以開啟一系列處理的可能性的時候, 如果沒有考慮足夠嚴格的安全策略來處理安全隱患, 它就有可能帶來系統的災難。安全性問題在設計SOA 系統時顯得尤為重要。本文旨在研究SOA 架構下的安全問題,提出SOA 架構的安全解決方案,保證服務資源的安全。
1.SOA 的安全性
SOA 是一種設計、開發、部署和管理服務的面向服務的體系結構。基于SOA 的系統可能由不同廠商的基于異構平臺的多種服務組合而成, 每個服務都具有各自獨立的安全域, 由不同企業的不同部門負責管理和維護,所以具有跨身份和管理邊界的身份轉換、傳播和跨技術平臺的特點。在安全性上要求SOA 必須建立統一的信任體系,請求者能夠在服務間自由交互,系統能夠隨著邊界的不同而自動轉換請求者的身份。同時Web Service 能夠在多個系統安全完整地進行數據交換,要共同組成一個完整的一站式服務,必須在合作伙伴之間建立可靠、安全的信任關系。SOA 系統可以是跨平臺、多個應用系統的服務組合,需建立統一、重用、共享安全性的安全標準及共享安全組件, 例如CA 認證、信道加密或安全網關等。使用者需要對SOA 提供的服務進行擔保,確保服務僅執行其請求的操作。
傳統的安全防御對象主要是針對人,SOA 強調機器與機器的交互, 而其安全性都是基于人與機器交互的威脅。如何應對服務之間交互時產生的威脅是SOA安全防御的重要方面。在未采取安全保護措施的SOA中,Web 服務往往不具備跟蹤服務的授權和使用狀態的功能, 未授權用戶可以非常輕松地訪問Web 服務。身份驗證和授權是安全保障必需的方法。SOA 設計要涵蓋消息級和傳輸級安全性,必須保護敏感信息,以安全方式暫存敏感信息,同時保證消息源的完整性。SOA系統應具有可追究性和可跟蹤性,必須具有很強的服務審計能力。SOA 使用者可以保存系統的操作記錄,以便跟蹤其用戶和消息。
1.2 SOA的安全基礎
SOA 強調松散耦合的分布式系統集成,SOA 架構解決了開放性和重用性, 其安全性是架構存在的必要保障。結合SOA 架構的特點,其安全性保障應解決的安全基礎問題是認證、授權、機密性和抗攻擊性。因為SOA 架構的訪問用戶的隨機性和不確定性,所以需要完善的身份認證措施。SOA 架構的服務是開放的、跨邊界的,防止非授權組織非法獲取信息,加密和訪問控制是保護敏感信息實現機密性的做法。SOA 架構可以是提供多個服務組合的應用,一個應用功能可能對應各個組成服務的多個操作,因此,在對SOA 架構的訪問授權上應提出檢查各組成服務的訪問控制規則。SOA 架構的抗攻擊性是確保攻擊者不能獲得應用之外的控制。
2.安全SOA 架構的構建研究
SOA是基于服務的分布式系統的設計框架。SOA系統的安全性主要是來自內部和外部的威脅。因此,我們采用現有的WS-Security 規范和混合多級訪問控制機制相結合來解決SOA 架構的安全問題,設計端到端的安全模型,保障整個Web 服務的對話安全。
2.1 構建SOA的安全服務
SOA 是面向服務的,所以SOA 可以提供安全服務的調用來保障應用系統的安全。SOA 架構的安全服務可以獨立運行,同時提供應用程序接口API 給其他服務、應用等調用。SOA 的安全服務包括消息安全和系統安全。消息安全服務是指數據的一致性、私密性服務。系統安全服務則包括認證、授權、審計等服務。所以安全服務主要解決身份認證、資源授權、數據加密、數字簽名、訪問控制、傳輸安全等問題。SOA 架構的應用系統可以由安全服務來提供安全保障,應用系統只需調用安全服務,應用服務的安全處理完全由安全服務來完成。
在SOA 架構下,安全服務應提供對用戶及角色的管理和控制;將服務、數據及應用等客體資源的訪問、操作及控制權限分配到相應的組織、用戶、角色等主體中,對資源授權進行管理;對不同請求進行身份驗證及訪問控制,防止對服務的非法使用,禁止非法進入系統和調用服務; 提供訪問主體對受限資源訪問的操作軌跡、歷史記錄等服務,以便跟蹤和發現資源訪問和操作問題。
2.2 應用WS-Security安全規范
Web Service 是SOA 架構的主要實現技術。對Web Service 的安全設計需要考慮各種安全,包括消息安全、數據安全、傳輸安全、環境安全。對傳輸安全可以采用基本認證、防抵賴及加密、防火墻、虛擬專用網(VPN)等措施解決。對環境安全可以采用登錄、審核、構建信任關系和通信模式等管理措施解決。消息安全和數據安全的保障采用WS-Security 安全規范。由于Web Service 中的各角色之間是以SOAP 消息進行通信的,因此為保證SOAP 消息的安全,WS-Security 規范制定安全令牌、XML 封裝、XML 數字簽名的安全措施。WS-Security 安全令牌(Security Token)即在SOAP 消息頭中嵌入用戶名和密碼或X.509 證書等代表Web 服務請求者的身份。服務的提供者將安全令牌和數字簽名相結合可以確認SOAP 消息是由合法的請求者產生。WS-Security 對SOAP 消息進行XML 封裝,確保消息的機密性,即使SOAP 消息被監聽,監聽者也無法提取出有效信息。WS-Security 對SOAP 消息進行XML 數字簽名,確保消息的完整性和不可抵賴性,使得消息不被篡改。
WS-Security 規范提供了足夠靈活的基礎安全機制,在標準的SOAP 規范之上構建安全Web Service,保障完整性和機密性。但要解決Web Service 應用中所有的安全問題,仍需建立一系列的安全規范,包括WebService 端策略(WS-Policy)、信任模型(WS-Trust)、隱私模型(WS-Privacy)、安全會話(WS-SecureConversation)、聯合信任(WS-Federation)和授權(WS-Authorization),這些規范保證已經認證傳輸的信息,并解決如何連接使用不同安全技術用戶計算機系統的問題。基于WSSecurity提供的基本安全機制,通過各種方式聯合,WS-Security 可以根據Web Service 應用環境構建使用多種策略的更完善的安全性模型。
2.3 設計SOA的安全模型
對Web Service 安全性的探索呈現出一個特點,即通過遵循WS-Security 規范,數字簽名、XML 數字加密等Web Service 安全性規范,保證了端對端的SOAP 消息安全性,但是如何有效實現Web Service 的授權和認證仍是需要解決的關鍵問題。SOA 架構的安全性不同于傳統架構。SOA 架構的服務請求者可以來自不同的安全級別、不同的操作系統以及不同的復雜網絡環境。
WS-Security 安全規范是Web Service內部安全性實現的保障,SOA 架構下的應用系統可能是多個應用的服務組合而成的,因而多個服務之間的安全訪問控制是確保SOA 架構安全的關鍵性因素之一。
傳統架構常用的訪問控制模型是自主訪問控制和強制訪問控制。隨著網絡技術的發展,對傳統架構訪問控制提出了一系列的改進,發展出基于角色的訪問控制模型、基于決策的訪問控制模型、基于信任關系的訪問控制模型、基于對象的訪問控制模型等。但傳統的訪問控制模型并沒有考慮訪問控制主體、客體的復雜性,不能完全適合SOA 架構的開放性和安全性等特性需求,無法很好地解決SOA 架構的訪問控制安全問題。為保證SOA 架構的服務資源的授權訪問及信息機密性,國際組織制定了XACML(Extensible Access Control Markup Language,可擴展訪問控制標記語言)安全標準規范,以對SOA 架構的訪問控制提供一定的安全技術支撐。XACML 是一種基于XML 標準的訪問控制策略安全規范,提供了一種標準化的SOA 架構訪問控制決策模型,具有通用性和分布式特性。XACML 充分地考慮了SOA 架構的主體、資源和環境的屬性,提供一種更細粒度的訪問控制機制,很好地適用SOA 架構服務的異構性、動態性和復用性等特性。
本文研究了一種混合多級的訪問控制安全模型。模型的設計思想歸納如下:模型以服務的方式實現,適合于分布式的動態變化的SOA 架構,能夠處理主客體的異構性、動態性;能夠解決SOA 架構下的訪問控制策略的統一性及協商性問題;根據SOA 架構的服務資源細粒度訪問控制的需求構建資源模型, 使訪問控制對象劃分更為明確和具有針對性。面向服務的混合的多級訪問控制安全模型的實體認證技術采用混合訪問控制,即采用基于角色、策略和信任關系等多種訪問控制互補的混合訪問控制方法。混合訪問控制方法合理地拓展用戶訪問資源的范圍和權限。訪問控制根據用于用戶角色和權限執行操作; 根據設定的策略阻止潛在的入侵者,防止未授權的或濫用權限的訪問;采用信任度和風險度評價相結合的方法, 制定訪問控制的決策,建模信任關系,支持來跨區域的可信用戶的訪問。面向服務的混合的多級訪問控制安全模型的決策依據XACML 決策模型來實現。在SOA 架構下,XACML 決策模型定義了一種策略語言和訪問決策語言,用于保護資源的訪問控制,并結合基于角色的授權機制提供對資源的細粒度訪問控制。混合的多級訪問控制安全模型實現的是細粒度的訪問控制,將SOA 架構的服務及方法對應的XML 樹結構中的元素及元素屬性都作為模型的客體,側重于SOA 架構的系統保密性,在保持SOA 架構的特性的前提下有效保護系統的服務資源。模型的用戶是訪問控制主體,是服務的請求者。模型中的資源是訪問控制的客體。可以對服務的資源建模,從而達到對資源的訪問控制更加細粒度化。
3.結語
本文研究SOA 架構的安全問題,分析傳統的安全措施應用于SOA 的適用性問題; 在應用WS-Security安全規范的基礎上,援引構建安全服務的思想,研究了混合多級的訪問控制安全模型,提出了SOA 架構下的安全服務方案。除訪問控制的安全服務外,模型的安全服務應該在不同的應用環境中提供不同的安全模型和安全手段,執行相應的安全措施保護對象安全,這些問題的解決對模型的設計至關重要。
核心關注:拓步ERP系統平臺是覆蓋了眾多的業務領域、行業應用,蘊涵了豐富的ERP管理思想,集成了ERP軟件業務管理理念,功能涉及供應鏈、成本、制造、CRM、HR等眾多業務領域的管理,全面涵蓋了企業關注ERP管理系統的核心領域,是眾多中小企業信息化建設首選的ERP管理軟件信賴品牌。
轉載請注明出處:拓步ERP資訊網http://www.guhuozai8.cn/
本文標題:面向SOA的安全架構研究綜述
本文網址:http://www.guhuozai8.cn/html/consultation/10839612962.html