當(dāng)“應(yīng)用程序”是運(yùn)行在單一服務(wù)器上的巨大軟件的一個(gè)單元時(shí),應(yīng)用程序生命周期管理(ALM)將仍然會(huì)是一個(gè)挑戰(zhàn),這是因?yàn)闉榱嗽谡麄€(gè)軟件改變的級(jí)別上維持業(yè)務(wù)運(yùn)營(yíng)的需求。隨著在員工一側(cè)的云計(jì)算與彈性資源,多供應(yīng)商集成、模塊化和編排的結(jié)合,挑戰(zhàn)也被放大了。
放大效果非常嚴(yán)重的地方是安全領(lǐng)域。像其它在應(yīng)用部署中的需求一樣,云安全需求應(yīng)該在ALM中得到反應(yīng),而不是靠運(yùn)氣。
在ALM中,應(yīng)用程序貫穿在開(kāi)發(fā)/修改、測(cè)試、展示,部署、生產(chǎn)/運(yùn)營(yíng)、版本管理和然后從頭開(kāi)始的整個(gè)迭代周期中。在傳統(tǒng)的靜態(tài)數(shù)據(jù)中心部署中,安全流程經(jīng)常是用在像數(shù)據(jù)中心、網(wǎng)絡(luò)之類的環(huán)境中,在那里部署、測(cè)試應(yīng)用程序,而且更像為運(yùn)營(yíng)作部署而不應(yīng)用程序本身。周期性的ALM流程在一個(gè)一致的安全保護(hù)傘下運(yùn)行著。不幸地,這種方法對(duì)云不起作用。
在云部署中,應(yīng)用程序越來(lái)越多地部署在托管關(guān)虛擬機(jī)或SaaS組件元素的虛擬子網(wǎng)絡(luò)中。然后經(jīng)過(guò)通過(guò)網(wǎng)關(guān)連接到這個(gè)應(yīng)用子網(wǎng)絡(luò)上的WAN來(lái)訪問(wèn)這些。所有的這些虛擬化都掩蓋了一個(gè)事實(shí):出于安全目的每一種應(yīng)用程序結(jié)構(gòu)都是新的基礎(chǔ)設(shè)施。僅僅只是作為一個(gè)虛擬LAN,而沒(méi)有任何網(wǎng)關(guān),是不能支持用戶連接的,沒(méi)有關(guān)于那個(gè)網(wǎng)絡(luò)的具體安全功能的LAN也是不安全的。這迫使用戶反把安全管理的環(huán)境問(wèn)題轉(zhuǎn)向了應(yīng)用程序問(wèn)題,這也就是轉(zhuǎn)向了ALM問(wèn)題。
基于ALM安全的起點(diǎn)必須是一個(gè)虛擬網(wǎng)絡(luò)模型,例如真正的基礎(chǔ)設(shè)施,這樣可以得到保護(hù)。不論是公有云,還是私有云,以及所有云服務(wù)的SaaS模型,都應(yīng)該也這樣的假設(shè)兼容,假設(shè)一個(gè)給定的應(yīng)用程序組件托管在一個(gè)虛擬的LAN上,并在IP地址集上通過(guò)網(wǎng)關(guān)可以訪問(wèn)。這個(gè)模型提供了一個(gè)網(wǎng)絡(luò)連接框架,這樣可以你LAN在數(shù)據(jù)中心那樣得到保護(hù),這意味著防火墻、訪問(wèn)控制之類的可以遵循ALM專業(yè)人士很可能在內(nèi)部IT中已經(jīng)使用的標(biāo)準(zhǔn)的數(shù)據(jù)中心模型。該模型將來(lái)不得不要適應(yīng)云,同時(shí)也必須要涉及到整個(gè)ALM流程,從開(kāi)發(fā)/修改到版本控制和發(fā)起一個(gè)新的變化周期。
為了云安全實(shí)踐做的修改現(xiàn)在與托管應(yīng)用的虛擬網(wǎng)絡(luò)模型和用于數(shù)據(jù)中心應(yīng)用聽(tīng)真實(shí)網(wǎng)絡(luò)模型的不同之處有關(guān)。如果應(yīng)用程序的虛擬網(wǎng)絡(luò)只是對(duì)控制的 VPN有用,那么這就代表著與傳統(tǒng)的從同樣的VPN訪問(wèn)應(yīng)用程序相比,安全性并沒(méi)有提高。如果應(yīng)用虛擬網(wǎng)絡(luò)通過(guò)互聯(lián)網(wǎng)和互聯(lián)網(wǎng)VPN可訪問(wèn),那么應(yīng)用程序的網(wǎng)關(guān)在互聯(lián)網(wǎng)上是可尋址,以及是受黑客或DDoS攻擊的目標(biāo)。這往往是通過(guò)ISP或應(yīng)用聽(tīng)VLAN網(wǎng)關(guān)來(lái)緩解,但無(wú)論是哪種情況,激活安全流程都必須是明確的(通過(guò)合同或通過(guò)選擇和設(shè)置正確的網(wǎng)狀)。這些步驟將來(lái)不得不加入到ALM流程的清單中,不不僅是為生產(chǎn)的部署,也是為了應(yīng)用程序曝光之前的所有階段。
在ALM中適應(yīng)去的問(wèn)題是,版本的多樣性和應(yīng)用程序可以在一個(gè)給定的點(diǎn)的操作狀態(tài)。一個(gè)給定的軟件很可能存在于在至少兩個(gè)操作狀態(tài)(生產(chǎn)和測(cè)試)中,也可能是5個(gè),甚至更多的狀態(tài)中,這要取決于軟件修改流程的復(fù)雜性和測(cè)試的數(shù)量,與遷移一個(gè)應(yīng)用程序相關(guān)的全面生產(chǎn)的前期制作階段的數(shù)量。雖然每個(gè)測(cè)試階段測(cè)試安全以及應(yīng)用程序功能是重要的,但同樣重要的是,安全流程要明顯不同與所有其他版本相控資源集。只是有一個(gè)安全保護(hù)傘來(lái)保護(hù)所有的軟件 ALM階段,或測(cè)試污染生產(chǎn)使用存在風(fēng)險(xiǎn),是不能令人滿意的。
事實(shí)上,在ALM中保護(hù)應(yīng)用程序的多狀態(tài)或多版本的最安全路徑是,假設(shè)每一個(gè)ALM狀態(tài)或版本(例如,生產(chǎn)和測(cè)試)有他們自己的虛擬網(wǎng)絡(luò),以及有相同的工具集和操作流程不保護(hù)每一個(gè)虛擬網(wǎng)絡(luò),每個(gè)都有自己的迭代的工具和流程。
這些必須相互保護(hù)獨(dú)立,就像真實(shí)的軟件版本保持獨(dú)立一樣,也是同樣的理由?;旌习踩鞒炭赡軙?huì)經(jīng)意間影響生產(chǎn)應(yīng)用程序安全,或者是允許用戶訪問(wèn)測(cè)試系統(tǒng),當(dāng)他們確信他們正在使用產(chǎn)生版本的進(jìn)修。最重要的是,對(duì)于云來(lái)說(shuō),安全必須是ALM的一個(gè)元素,因?yàn)樘摂M資源安全不能簡(jiǎn)簡(jiǎn)單單地就被管理,或得到保障,只是借助于傳統(tǒng)的網(wǎng)絡(luò)和與固定資源和設(shè)備相關(guān)的IT流程。
安全并不是唯一的工具集和實(shí)踐,它不得不從一個(gè)整體基礎(chǔ)設(shè)施轉(zhuǎn)移到一個(gè)應(yīng)用程序?yàn)橹攸c(diǎn)的,從固定托管移動(dòng)到云上的應(yīng)用程上,但它很可能是第一個(gè),也是最重要的。假設(shè)云安全問(wèn)題是把應(yīng)用遷移到云上的主要技術(shù)障礙,那么就可以合理的假設(shè),在ALM中未能適應(yīng)新的安全模型,可能放緩云應(yīng)用的速度并減少整體利益。