四種解決方案模式保證SOA安全
要確保面向服務(wù)架構(gòu)(SOA)的安全,最簡(jiǎn)單也是最常見(jiàn)的方案就是通過(guò)虛擬專(zhuān)用網(wǎng)(VPN)來(lái)傳送服務(wù)請(qǐng)求。這種方案提供的安全性足以滿足簡(jiǎn)單、粗粒度的要求,而且與簡(jiǎn)單對(duì)象訪問(wèn)協(xié)議(SOAP)、代表性狀態(tài)傳輸(REST)及非Web服務(wù)協(xié)議兼容,甚至足以滿足許多外部集成場(chǎng)景的要求。不過(guò)并非所有的安全場(chǎng)景都很簡(jiǎn)單: 對(duì)比較復(fù)雜的要求和細(xì)粒度的SOA安全而言,架構(gòu)師們必須大大加強(qiáng)規(guī)劃和設(shè)計(jì)。要為SOA安全制定一套綜合的策略和架構(gòu),架構(gòu)師就必須考慮方方面面的安全要求、業(yè)務(wù)場(chǎng)景和應(yīng)用基礎(chǔ)架構(gòu),把多個(gè)產(chǎn)品、標(biāo)準(zhǔn)和自定義組件結(jié)合起來(lái),形成一套靈活、穩(wěn)健的SOA安全解決方案。
至少有10類(lèi)產(chǎn)品可以在SOA安全架構(gòu)中發(fā)揮作用,它們?cè)趲讉€(gè)重要方面存在功能重疊。SOA和Web服務(wù)安全規(guī)范具有模塊化的結(jié)構(gòu),這意味著架構(gòu)師們必須針對(duì)將來(lái)使用哪些規(guī)范、何時(shí)使用這些規(guī)范作好認(rèn)真規(guī)劃。對(duì)安全有不同要求的業(yè)務(wù)場(chǎng)景可能需要結(jié)合不同的規(guī)范和產(chǎn)品。進(jìn)一步增添復(fù)雜性的是,諸多標(biāo)準(zhǔn)和規(guī)范還沒(méi)有完全成熟。所以對(duì)許多規(guī)范來(lái)說(shuō),業(yè)界在最佳實(shí)踐方面還沒(méi)有太多的經(jīng)驗(yàn)可談。架構(gòu)師們可能面臨另外幾個(gè)挑戰(zhàn),包括不同的SOA基礎(chǔ)架構(gòu)、多個(gè)SOA消息交換模式、需要跨多個(gè)環(huán)境聯(lián)合安全,以及一個(gè)服務(wù)調(diào)用另一個(gè)服務(wù)時(shí),需要跨各層宣布身份。更不用說(shuō)那些常見(jiàn)問(wèn)題了,比如組織摩擦、成本和架構(gòu)治理方面的難題。
正是由于這些難題,很少有企業(yè)能夠事先進(jìn)行投入,構(gòu)建一套全面、綜合的SOA安全解決方案來(lái)滿足將來(lái)的所有要求。這意味著架構(gòu)師面臨的最終挑戰(zhàn)是,逐漸完善綜合的解決方案。為了幫助獲得這種循序漸進(jìn)的方案,本文介紹了一系列完整的四種解決方案模式,表明了如何把不同的產(chǎn)品整合到SOA安全解決方案以滿足今天的要求,以及今天的解決方案如何為滿足明天的要求留有一條后路。
第一種場(chǎng)景: 簡(jiǎn)單的VPN在短期內(nèi)提供基本的解決方案。
先從第一種模式說(shuō)起,有些SOA用戶會(huì)遇到這種場(chǎng)景: 眼下他們需要迅速找到一款可以接受、盡管并非最理想的SOA安全解決方案。在這種情況下,SOA請(qǐng)求和響應(yīng)只使用傳輸層安全機(jī)制來(lái)確保安全。若是SOAP和REST,通常通過(guò)雙向的安全套接層(SSL)協(xié)議來(lái)實(shí)現(xiàn)。若是VPN連接,那么通過(guò)公共互聯(lián)網(wǎng)傳達(dá)的請(qǐng)求也是機(jī)密、安全的。簡(jiǎn)單的VPN方案常常使用隱式授權(quán)(implicit authorization),通過(guò)VPN進(jìn)來(lái)的任何請(qǐng)求都可以訪問(wèn)可用服務(wù)。雖然簡(jiǎn)單的VPN能支持識(shí)別每個(gè)用戶身份的任務(wù),但由于管理每個(gè)用戶的證書(shū)需要龐大的管理開(kāi)銷(xiāo),所以這種情況實(shí)際很少出現(xiàn)。簡(jiǎn)單的VPN常常被配置成服務(wù)使用者平臺(tái)和服務(wù)平臺(tái)之間的直接傳輸層連接——服務(wù)平臺(tái)可能是應(yīng)用服務(wù)器,或者是簡(jiǎn)單的Web服務(wù)環(huán)境。據(jù)弗雷斯特調(diào)研公司的一項(xiàng)調(diào)查顯示,三分之二的SOA用戶表示,單單使用簡(jiǎn)單的VPN也是確保SOA安全的一個(gè)重要手段。
方案成熟度: ★★★★☆
實(shí)施難易: ★★★☆☆
第二種場(chǎng)景: 基于應(yīng)用服務(wù)器的方案滿足審計(jì)和合規(guī)方面的要求。
第二種模式基于應(yīng)用服務(wù)器的方案與第三種模式單一中介方案,都能處理對(duì)單個(gè)用戶進(jìn)行驗(yàn)證和授權(quán)的任務(wù)。基于應(yīng)用服務(wù)器的方案立足于服務(wù)實(shí)現(xiàn)平臺(tái)中的SOA安全功能,服務(wù)實(shí)現(xiàn)平臺(tái)包括應(yīng)用服務(wù)器、集成服務(wù)器、套裝應(yīng)用軟件和軟件即服務(wù)(SaaS)等平臺(tái)。由于讓服務(wù)平臺(tái)可以根據(jù)實(shí)際最終用戶來(lái)保留安全環(huán)境,這種方案便于實(shí)現(xiàn)高級(jí)的授權(quán)策略。它還讓審計(jì)日志可以記錄實(shí)際最終用戶的服務(wù)請(qǐng)求活動(dòng),這種功能對(duì)隱私及其他法規(guī)所需的詳細(xì)審計(jì)和合規(guī)來(lái)說(shuō)很重要。盡管這種方案有這樣的優(yōu)點(diǎn): 不需要現(xiàn)金支出來(lái)購(gòu)買(mǎi)新的SOA專(zhuān)門(mén)產(chǎn)品,但如果用戶有多個(gè)平臺(tái),所需的配置及集成工作可能會(huì)導(dǎo)致在工時(shí)上所花的成本相當(dāng)于或超過(guò)購(gòu)買(mǎi)及配置SOA專(zhuān)門(mén)產(chǎn)品所需的成本。
基于應(yīng)用服務(wù)器的SOA安全常常會(huì)使用簡(jiǎn)單的VPN連接作為基礎(chǔ)。這種場(chǎng)景可能出現(xiàn)的一種延伸應(yīng)用包括: 使用來(lái)自單次登錄或身份管理環(huán)境的SOA或應(yīng)用服務(wù)器安全插件,為應(yīng)用服務(wù)器上的SOA服務(wù)與身份管理產(chǎn)品控制的其他應(yīng)用資產(chǎn)之間提供始終如一的安全性。
方案成熟度: ★★★★☆
實(shí)施難易: ★★★☆☆
第三種場(chǎng)景: 單一中介整合安全處理工作。
第三種模式是單一中介方案,這種方案把SOA安全功能全部集中到在用戶的服務(wù)實(shí)現(xiàn)平臺(tái)前的策略執(zhí)行點(diǎn)。這就簡(jiǎn)化了SOA安全,提供的單一解決方案(包括中介及管理工具)能夠跨所有SOA服務(wù)來(lái)提供安全,至少對(duì)該中介支持的消息格式和協(xié)議來(lái)說(shuō)是這樣。不過(guò)要是單純采用這種方案,服務(wù)平臺(tái)實(shí)際上關(guān)閉了用戶級(jí)的SOA安全功能,而改由中介來(lái)處理所有SOA安全。中介可能由幾類(lèi)不同產(chǎn)品來(lái)提供,包括SOA設(shè)備、SOA管理解決方案、企業(yè)服務(wù)總線(ESB)、面向集成的業(yè)務(wù)流程管理套件(IC-BPMS)或者是專(zhuān)門(mén)的SOA安全產(chǎn)品。
單一中介方案可能也會(huì)使用簡(jiǎn)單的VPN連接作為基礎(chǔ)。中介負(fù)責(zé)所有SOA安全處理工作; 因而,并不要求服務(wù)平臺(tái)支持任何特定的SOA安全; 這樣,該解決方案就可以支持一系列廣泛的服務(wù)平臺(tái)。
方案成熟度: ★★★★☆
實(shí)施難易: ★★★★☆
第四種場(chǎng)景: 代理、分層、聯(lián)合的方法提供完整的SOA安全。
屬于第四種模式的SOA安全解決方案深入全面地集成,可以跨多層服務(wù)調(diào)用,確保了每個(gè)服務(wù)平臺(tái)都可以訪問(wèn)用戶的身份; 該方案還支持高級(jí)的安全場(chǎng)景,比如安全聯(lián)合和令牌交換。如今,很少有公司接觸這種解決方案,更不用說(shuō)實(shí)現(xiàn)了。不過(guò),隨著SOA安全解決方案、標(biāo)準(zhǔn)和產(chǎn)品的不斷成熟,加上隱私和金融法規(guī)變得更嚴(yán)格,高級(jí)的SOA安全解決方案會(huì)變得更切實(shí)可行(包括成本上和技術(shù)上)。而且,有些場(chǎng)景可能確實(shí)明確需要這種解決方案。代理、分層、聯(lián)合的SOA安全解決方案會(huì)使用多種標(biāo)準(zhǔn)、集成多個(gè)產(chǎn)品,而且極有可能需要自定義集成,以便把各部分整合起來(lái)。
為了逐步完善SOA安全策略,IT部門(mén)在設(shè)計(jì)時(shí),應(yīng)盡可能在簡(jiǎn)單的SOA安全模式與較復(fù)雜的模式之間融入連貫性、一致性。雖然企業(yè)可能習(xí)慣于在安全方面做出妥協(xié),以避免高級(jí)的代理、分層、聯(lián)合安全策略所需的成本,但隨著SOA安全日趨成熟、對(duì)網(wǎng)絡(luò)安全的要求與日俱增,高級(jí)的安全策略會(huì)逐漸變得更容易實(shí)現(xiàn)、更必不可少。
方案成熟度: ★★★☆☆
實(shí)施難易: ★★★★☆
鏈 接
SOA安全要素
SOA安全部署最有效的地方并非像傳統(tǒng)解決方案那樣在于網(wǎng)關(guān)。IT人員需要結(jié)合現(xiàn)行的情況進(jìn)行部署,并要根據(jù)企業(yè)SOA的環(huán)境來(lái)評(píng)估決定。IT用戶可以借鑒企業(yè)解決網(wǎng)絡(luò)訪問(wèn)管理(WAM)問(wèn)題來(lái)提高互動(dòng)狀態(tài)的方法來(lái)保護(hù)SOA,包括如下重點(diǎn):
SOA安全網(wǎng)關(guān): 網(wǎng)關(guān)為進(jìn)入企業(yè)的XML流量提供了一個(gè)代理,并運(yùn)用安全策略來(lái)確保某種形式的請(qǐng)求與驗(yàn)證。
SOA平臺(tái): 在為SOA應(yīng)用提供管理的同時(shí),平臺(tái)在驗(yàn)證和授權(quán)方面也提供了一些基本的安全保護(hù)。
SOA容器: 最終每種應(yīng)用都將直接建立自己的安全功能來(lái)保護(hù)數(shù)據(jù)安全。
【編輯推薦】