面向服務(wù)的系統(tǒng)架構(gòu)(Service-Oriented Architecture,SOA)通過松散耦合、可重用的服務(wù)作為基本元素構(gòu)建分布式應(yīng)用,它的開放性特征增強(qiáng)了信息系統(tǒng)的靈活性。同時,SOA的開放性也造成了基于SOA的信息系統(tǒng)的安全性問題。因此,我們設(shè)計基于SOA的分布式應(yīng)用必須要充分考慮其所面臨的安全威脅,設(shè)計相應(yīng)的安全模式來避免或減少安全威脅。當(dāng)前,SOA架構(gòu)面臨許多關(guān)鍵性安全問題,安全問題的重要性呈現(xiàn)逐步上升趨勢,已成為制約SOA架構(gòu)縱深應(yīng)用的發(fā)展瓶頸。
1.SOA的應(yīng)用現(xiàn)狀
SOA是一種全新模式,它支持企業(yè)將業(yè)務(wù)整合為一系列相互銜接的服務(wù)或重復(fù)性業(yè)務(wù)任務(wù),從而使企業(yè)能夠高效、重復(fù)地利用現(xiàn)有技術(shù)。SOA可以更好地將IT 目標(biāo)與業(yè)務(wù)目標(biāo)達(dá)成一致,實現(xiàn)了業(yè)務(wù)靈活性,節(jié)省了成本。
SOA應(yīng)用是一股不可阻擋的潮流,原因在于SOA的應(yīng)用所能帶來的信息系統(tǒng)建設(shè)的靈活性和開放性。SOA最受人關(guān)注的是對分布式、大規(guī)模、異構(gòu)環(huán)境下信息系統(tǒng)的整合能力,提高業(yè)務(wù)系統(tǒng)的敏捷性。SOA能解決在異構(gòu)環(huán)境下,企業(yè)多個信息系統(tǒng)的應(yīng)用集成,即不同應(yīng)用系統(tǒng)之間的互聯(lián)互通和信息資源共享,使得企業(yè)的信息資源和業(yè)務(wù)可以更好地結(jié)合在一起。
根據(jù)Companies&Markets 公司的一份收費報告統(tǒng)計結(jié)果顯示,SOA市場正處于應(yīng)用需求的旺盛時期。導(dǎo)致SOA市場強(qiáng)勁增長的原因是因為云計算的興起,對應(yīng)用框架的需求越來越多,面向云計算的數(shù)據(jù)中心希望更多地整合和連接應(yīng)用。SOA架構(gòu)中基本組成元素是可重用的服務(wù)集合,而云計算強(qiáng)調(diào)一切資源皆以服務(wù)的形式面向用戶。云計算和SOA是互補(bǔ)的,SOA能夠?qū)我还δ艿脑品⻊?wù)組合成能滿足復(fù)雜業(yè)務(wù)需求的應(yīng)用,云服務(wù)為SOA提供了大量的可供其集成的遠(yuǎn)端服務(wù)。因此,我們認(rèn)為對SOA信息安全的深入研究對云計算安全也有著非常重要的借鑒意義。
2.SOA架構(gòu)下的安全挑戰(zhàn)
2.1 技術(shù)安全威脅挑戰(zhàn)
2.1.1 SOA架構(gòu)模式自身安全威脅
基于SOA的系統(tǒng)是開放的、分布式的、互連的,消息是服務(wù)與使用者之間傳輸數(shù)據(jù)的基本元素。我們可以控制服務(wù)內(nèi)部的消息,也可以對服務(wù)使用者加以安全控制,但是對于服務(wù)與服務(wù)之間的空間缺少安全控制。Pat Helland 把這塊空間稱為“無人區(qū)”,特別是當(dāng)消息是通過Internet 傳輸時,安全問題就顯得尤其重要。在服務(wù)與服務(wù)之間的“無人區(qū)”上傳輸?shù)南⒁子谑艿酵{攻擊。許多安全威脅都與一類被稱為“中間人”的攻擊有關(guān)。當(dāng)服務(wù)或服務(wù)的使用者發(fā)出消息,攻擊者可以通過監(jiān)聽整個線路,獲取到消息或?qū)χM(jìn)行篡改。因此,SOA安全模式設(shè)計要充分考慮保護(hù)數(shù)據(jù)機(jī)密性、保護(hù)數(shù)據(jù)完整性、防止數(shù)據(jù)偽造和保證數(shù)據(jù)可用性。
2.1.2 外部惡意攻擊引發(fā)的安全威脅
當(dāng)攻擊者發(fā)送給服務(wù)使用者惡意代碼時,服務(wù)使用者應(yīng)該對接受的信息進(jìn)行正確判斷。XML 拒絕服務(wù)攻擊即是一個典型的惡意攻擊。在這種類型的攻擊中,攻擊者在傳輸?shù)南⒅懈郊雍芏鄶?shù)字簽名,服務(wù)使用者收到這類消息,解析器將對所有簽名進(jìn)行解析,導(dǎo)致相關(guān)服務(wù)負(fù)載過重,進(jìn)而造成服務(wù)不可用。另一種常見的惡意攻擊是XPath 注入攻擊,有時甚至更為普通的SQL 注入攻擊都可以對系統(tǒng)注入惡意參數(shù),從而達(dá)到信息泄露或?qū)Ψ⻊?wù)中的數(shù)據(jù)執(zhí)行有危害的操作。
2.1.3 多服務(wù)系統(tǒng)融合衍生的安全威脅
由于缺乏安全關(guān)鍵技術(shù)支持,在利用基于多個SOA平臺共同構(gòu)建應(yīng)用系統(tǒng)時,將多個服務(wù)進(jìn)行整合,必然提高整體系統(tǒng)的復(fù)雜性,進(jìn)一步增加安全風(fēng)險。
2.2 SOA安全管理需求
建立SOA安全標(biāo)準(zhǔn)及其測評體系是度量實施SOA架構(gòu)系統(tǒng)安全能力的尺度,是構(gòu)建基于SOA架構(gòu)系統(tǒng)的重要參考。
2.2.1 對SOA安全標(biāo)準(zhǔn)和評測體系建設(shè)的需求
SOA安全標(biāo)準(zhǔn)不僅應(yīng)支持用戶描述其數(shù)據(jù)安全保護(hù)目標(biāo)、指定其所屬資產(chǎn)安全保護(hù)的范圍和程度,更重要的是,應(yīng)支持用戶,尤其是企業(yè)用戶的安全管理需求。搜集安全信息,分析查看系統(tǒng)日志信息、了解數(shù)據(jù)使用情況以及展開違法操作調(diào)查會牽涉到SOA架構(gòu)平臺服務(wù)提供者的核心數(shù)據(jù)或涉及到服務(wù)使用者的隱私數(shù)據(jù),帶來一定數(shù)據(jù)隱私保護(hù)問題。目前,SOA架構(gòu)平臺對接融合運作模式并不成熟,尚未形成行業(yè)標(biāo)準(zhǔn),服務(wù)使用者用戶與服務(wù)提供者之間的責(zé)權(quán)界定不清晰,因此,需要以安全標(biāo)準(zhǔn)形式將相關(guān)責(zé)權(quán)確定下來,明確指出服務(wù)信息范圍、獲取手段等,防止影響雙方的權(quán)益。此外,我們要堅持可測量、可驗證、可跟蹤的原則制定安全標(biāo)準(zhǔn)。
2.2.2 對SOA安全監(jiān)管的需求
由于SOA具有開放、透明和動態(tài)的特點,增加了對服務(wù)內(nèi)容監(jiān)管的難度。SOA的靈活性使得構(gòu)建基于SOA架構(gòu)的系統(tǒng)更加容易,服務(wù)所發(fā)布的內(nèi)容在網(wǎng)絡(luò)上跟蹤管理難度大,對內(nèi)容監(jiān)管困難;多服務(wù)融合構(gòu)建的系統(tǒng)存在跨區(qū)域、跨行業(yè)調(diào)用服務(wù)接口的可能,對服務(wù)封裝的功能和數(shù)據(jù)的監(jiān)管會涉及到多個部門,甚至多個行政區(qū)域。因此,當(dāng)出現(xiàn)安全問題時,安全監(jiān)管者往往難以判斷問題出自哪里。
3.SOA三維信息安全空間體系模型設(shè)計
由上所述,不難得出以下結(jié)論,SOA信息安全不僅是技術(shù)問題,更是管理問題。信息安全是“三分技術(shù),七分管理”的綜合性工作,任何技術(shù)措施只能起到增強(qiáng)信息安全防范能力的作用,信息安全應(yīng)該重視安全技術(shù),更應(yīng)該注重管理,只有管理到位,才能保障技術(shù)措施充分發(fā)揮作用。因此,為保障SOA信息安全,應(yīng)該從安全技術(shù)、安全服務(wù)、安全機(jī)制等三個維度建立SOA的信息安全空間體系模型,并將其作為信息安全方案設(shè)計和評價的參考模型,如圖1所示。
圖1 SOA的三維信息安全空間體系
3.1 安全技術(shù)
3.1.1 數(shù)據(jù)加密和數(shù)字簽名
加密和數(shù)字簽名是確保數(shù)據(jù)安全性的基本方法。SOA中采用受保護(hù)消息模式,由一個用于提升原始消息安全性的部件組成,加解密用于解決數(shù)據(jù)隱私問題,加密保護(hù)的強(qiáng)度取決于加密算法的設(shè)計和對密鑰的保護(hù)。數(shù)字簽名用于解決數(shù)據(jù)完整性問題。由于大部分SOA架構(gòu)下的消息是基于XML描述的,因此我們常用到XML 加密和 XML 簽名這兩個開發(fā)標(biāo)準(zhǔn),上述兩個標(biāo)準(zhǔn)都可以用來把安全加入到基于XML 的數(shù)據(jù)中去。XML 加密允許用戶加密XML 文檔中的具體元素。
3.1.2 訪問控制
訪問控制按照事先確定的規(guī)則決定服務(wù)請求者對服務(wù)的訪問是否合法。當(dāng)服務(wù)請求者試圖非法使用一個未經(jīng)授權(quán)的服務(wù)時,訪問控制將拒絕該請求,并將這一事件報告給安全審計跟蹤系統(tǒng),審計跟蹤系統(tǒng)將給出報警并記錄日志檔案。
3.1.3 數(shù)據(jù)完整性驗證
在數(shù)據(jù)完整性方面,傳統(tǒng)方式將海量的數(shù)據(jù)下載到客戶端,從而帶來大量的通信代價。遠(yuǎn)程數(shù)據(jù)完整性驗證協(xié)議能夠僅根據(jù)原始數(shù)據(jù)的一部分信息和數(shù)據(jù)的標(biāo)識進(jìn)行完整性驗證,因此適用于SOA架構(gòu)下的數(shù)據(jù)完整性驗證。
3.1.4 認(rèn)證技術(shù)
在SOA架構(gòu)中認(rèn)證主要有站點認(rèn)證、報文認(rèn)證、用戶和進(jìn)程認(rèn)證等。在SOA架構(gòu)的系統(tǒng)建設(shè),將面臨異構(gòu)環(huán)境下不同平臺的眾多的用戶,實現(xiàn)身份聯(lián)合和單點登錄可以支持服務(wù)之間更加方便地共享用戶身份信息和認(rèn)證服務(wù),并減少重復(fù)認(rèn)證帶來的運行開銷。
3.2 安全服務(wù)
SOA架構(gòu)提供的是一種開放、透明的架構(gòu)模式,在通過SOA進(jìn)行異構(gòu)系統(tǒng)整合時,服務(wù)使用者更希望直接面對的是SOA安全體系所提供的安全服務(wù)體系,而不是具體的底層技術(shù)。
3.2.1 實體認(rèn)證服務(wù)
實體認(rèn)證服務(wù)包括對等實體認(rèn)證服務(wù)和數(shù)據(jù)源點認(rèn)證服務(wù)。對等實體認(rèn)證服務(wù)用于兩個開放的SOA架構(gòu)下構(gòu)建的系統(tǒng)對接時,同等層中的實體建立鏈接或數(shù)據(jù)傳輸時,需要對服務(wù)提供者和服務(wù)使用者的合法性和有效性進(jìn)行驗證。數(shù)據(jù)源點認(rèn)證服務(wù)用于確保數(shù)據(jù)發(fā)自真正的源點,防止假冒。
3.2.2 數(shù)據(jù)保密服務(wù)
數(shù)據(jù)保密服務(wù)包括多種保密服務(wù),為了防止SOA架構(gòu)下各系統(tǒng)之間的傳輸?shù)南?shù)據(jù)被截獲或被非法存取而泄密,提供密碼加密保護(hù)。數(shù)據(jù)保密服務(wù)應(yīng)該提供鏈接方式和無鏈接方式兩種數(shù)據(jù)保密,同時也可對用戶指定字段的數(shù)據(jù)進(jìn)行保護(hù)。
3.2.3 數(shù)據(jù)完整性服務(wù)
數(shù)據(jù)完整性服務(wù)引入可信計算理念,通過建立一種特定的完整性度量機(jī)制,使計算平臺運行時具備分辨可信程序代碼與不可信程序代碼的能力,從而對不可信的程序代碼建立有效的防治方法和措施[7],用以防止非法實體通過SOA服務(wù),對傳輸?shù)臄?shù)據(jù)進(jìn)行修改、插入、刪除以及在數(shù)據(jù)交換過程中的數(shù)據(jù)丟失。數(shù)據(jù)完整性服務(wù)更細(xì)分為:帶恢復(fù)功能鏈接方式的數(shù)據(jù)完整性、不帶恢復(fù)功能鏈接方式的數(shù)據(jù)完整性、選擇字段鏈接方式的數(shù)據(jù)完整性、選擇字段無鏈接方式的數(shù)據(jù)完整性、無鏈接方式的數(shù)據(jù)完整性。
3.2.4 禁止否認(rèn)服務(wù)
禁止否認(rèn)服務(wù)用以防止服務(wù)參與雙方否認(rèn)自己通過服務(wù)發(fā)送過數(shù)據(jù)的行為,或接收方在收到數(shù)據(jù)后否認(rèn)自己收到過此數(shù)據(jù)或偽造接收數(shù)據(jù)的行為。由兩種服務(wù)組成:不得否認(rèn)發(fā)送和不得否認(rèn)接收。
3.2.5 提供證據(jù)服務(wù)
管理人員能夠通過該服務(wù),以最小代價得到SOA架構(gòu)下軟硬件資源的使用情況,如獲取日志數(shù)據(jù)、跟蹤審計數(shù)據(jù)、動態(tài)實時更新審計數(shù)據(jù)等,了解資源的使用情況、安全情況,如有異常情況通過報警提示;能夠提供事后的取證、分析服務(wù),使用歷史記錄可以取得特定環(huán)境、時間段或基于其他特定系統(tǒng)參數(shù)下,主機(jī)、服務(wù)器和網(wǎng)絡(luò)的使用信息,基于這些歷史記錄可以進(jìn)行某些統(tǒng)計、分析操作;對于已經(jīng)發(fā)生的系統(tǒng)破壞行為提供有效的追究證據(jù)。
3.3 安全機(jī)制
3.3.1 動態(tài)閉環(huán)的管理流程
根據(jù)SOA架構(gòu)下的系統(tǒng)生命周期特點,建立從規(guī)劃、建設(shè)、運行維護(hù)到結(jié)束的全過程安全管理機(jī)制,建立評估——響應(yīng)——防護(hù)——評估的動態(tài)閉環(huán)的管理流程。
SOA架構(gòu)下的系統(tǒng)處于不斷的建設(shè)和調(diào)整中,新的安全漏洞總是不斷地被發(fā)現(xiàn),單純的靜態(tài)管理流程已不能滿足要求,需要建立動態(tài)的、閉環(huán)的管理流程。動態(tài)、閉環(huán)的管理流程就是要通過安全評估和檢測工具(如漏洞掃描、入侵檢測等)及時了解存在的安全問題和安全隱患,據(jù)此制定安全建設(shè)規(guī)劃和安全加固方案。
3.3.2 基于模型的評測機(jī)制
SOA軟件的設(shè)計缺陷是運行錯誤的根源,但并非每一個缺陷都會產(chǎn)生錯誤,通過增加可信手段可以減少錯誤的發(fā)生,在SOA軟件生命周期中的不同階段,參考SOA軟件系統(tǒng)可信性模型、Web 服務(wù)可靠性的階段模型建立起安全度量和評測機(jī)制。
4.結(jié)束語
在互聯(lián)網(wǎng)應(yīng)用環(huán)境下,無論是SOA的服務(wù)提供者還是服務(wù)使用者,安全問題都是第一大問題。通過分析SOA面臨的安全挑戰(zhàn),在充分考慮技術(shù)條件的同時,結(jié)合服務(wù)和機(jī)制等方面因素,設(shè)計SOA的三維信息安全空間體系模型。該模型在每個維度上的實施越豐富、越深入、越具體、越科學(xué),則整個空間的安全性越好,因此在建設(shè)基于SOA的系統(tǒng)時,可以參考本文的安全模型評估信息系統(tǒng)的安全性,設(shè)計規(guī)劃安全建設(shè)方案。
核心關(guān)注:拓步ERP系統(tǒng)平臺是覆蓋了眾多的業(yè)務(wù)領(lǐng)域、行業(yè)應(yīng)用,蘊涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務(wù)管理理念,功能涉及供應(yīng)鏈、成本、制造、CRM、HR等眾多業(yè)務(wù)領(lǐng)域的管理,全面涵蓋了企業(yè)關(guān)注ERP管理系統(tǒng)的核心領(lǐng)域,是眾多中小企業(yè)信息化建設(shè)首選的ERP管理軟件信賴品牌。
轉(zhuǎn)載請注明出處:拓步ERP資訊網(wǎng)http://m.hanmeixuan.com/
本文標(biāo)題:基于SOA架構(gòu)的信息安全研究
本文網(wǎng)址:http://m.hanmeixuan.com/html/consultation/10839512739.html