在云計算生態鏈中,各類角色可以簡單地劃分為3類。
私有云計算平臺的使用者。這些用戶會建設屬于自己的基于云計算的私有數據中心,并通過該IT平臺支撐企業的業務應用,面向內部用戶和外部客戶提供云計算服務。
公共云計算服務的使用者。這些用戶將自己的應用部署到第三方提供的云計算平臺上,或直接使用第三方提供的基于云計算的應用,即SaaS(Software as a Service)方式。他們不需要關心如何建設云計算平臺,只要向云計算服務提供商訂購服務即可。
公共云計算服務的提供者。以Google、Amazon為代表,這些企業建設基于云計算的數據中心,并將云計算中心管理的資源(包括虛擬機、存儲空間、具體業務、應用軟件等)作為服務出租給最終用戶。
無論是中小型企業還是大型企業,都可以使用云計算服務。既可建設自己的私有云計算平臺,也可使用第三方提供的公共云計算服務,甚至可以成為公共云服務的提供商,為其他企業提供公共云服務。建設私有云對企在資金、技術、人員等諸多方面要求較高,中小企業通過租用方式使用第三方提供的公共云計算服務是個較好的選擇。使用公共云計算服務可以幫助這些企業節省IT系統的投入,通過租用方式替代購買硬件、軟件等固定產。這樣中小企業可以通過使用公共云計算服務,以較小的投入獲得穩定的IT平臺。與傳統基礎架構模式相比,企業選擇公共云計算基礎架構會帶來節省成本、資源利用率高、設備管理簡單、應用部署簡化等好處。
云計算節省成本、提高IT基礎架構效率、應用部署簡化等方面的優勢已經得到用戶一定程度上的認可。但公共云計算是否安全,這是中小企業選擇公共云計算服務必須要面對的問題,公共云服務提供商為開展業務,實現通過提供云計算服務盈利,也必須保證云安全。筆者通過分析當前公共云面臨的安全威脅,設計公共云安全參考框架,以應對公共云面臨的安全威脅,以期為云用戶在選擇云服務時提供安全方面的參考。
1、公共云安全威脅分析
隨著云計算的不斷普及,安全問題的重要性呈現逐步上升趨勢,已成為企業關注的焦點。用戶對公共云計算服務的主要擔憂就是安全性問題,其中涉及云計算技術的安全風險以及據監管方面的風險,對這兩方面的擔憂遠超過其他選項。要使企業和組織大規模應用云計算技術,放心將自己的數據、應用交付給云服務提供商管理,就必須全面分析并著手解決云計算所面臨的各種安全問題。
在傳統數據中心中,應用程序部署在機構的范圍之內,信任邊界處于企業IT部門的監控之下,幾乎是靜態的。信任邊界包括網絡、系統和位于私有數據中心并由IT部門管理的應用程序。通過虛擬專用網絡VPN、防火墻、入侵檢測系統IDs、入侵防御系統IPS以及多因素身份認證等網絡安全控制手段來保障數據中心安全。
采用公共云計算服務后,機構的信任邊界變成動態的,并且遷移到企業IT部門管理和控制范圍之外。這種控制權的轉移,使安全責任轉移到云服務提供商一端,對已有的信任管理和控制模式形成了很大的挑戰。同云計算環境下新型服務模式以及虛擬化技術的引入不可避免地帶來一系列新的安全問題。客戶數據和應用分別存儲、運行在遠端云中,云服務提供商控制云計算數據中心基礎架構,數據是否安全、云服務是否可靠都是選擇公共云計算服務必須面對的問題。公共云服務最終用戶主要安全目標有數據安全性和云計算服務可用性及性能。對數據安全性、云計算服務可用性及性能構成安全威脅主要來源有3方面。
1)用戶數據安全與隱私保護。因為云計算平臺,特別是公共云計算平臺的一個重要特征就是開放性,各種應用整合在一個平臺上,各類軟件運行的硬件平臺是動態變化的,沒有固定不變的安全邊界,難以實現用戶數據安全與隱私保護,對數據泄漏和數據完整性的擔心是云計算平臺必須解決的問題。
2)數據中心軟硬件的安全性。由于資源共享,如果云計算平臺運行過程中軟件出現錯誤或硬件發生故障,將可能導致相關應用無法正常使用,使存儲的數據丟失或損壞,會降低云計算平臺的可用性。從技術層面講,云算要保證不同用戶、不同應用的隔離性。這就需要采用可靠的系統監控、災難恢復機制以確保軟硬件系統的安全運行。
3)由于控制權的轉移導致的安全問題。IT平臺由企業內部控制轉移到由云服務提供商管理進而會引發出許多安全問題。
2、安全應對策略
公共云計算的安全管理不應僅局限于使用某種特定安全技術,應該是覆蓋整個云計算體系結構的整體安全策略。由于不同用戶針對安全需求存在差異,云計算平臺應具備提供不同安全等級云服務的能力,并且至少能提一個最低安全控制列表,使用戶認為其提供的云服務對用戶足夠安全。簡單來講,公共云計算平臺的安全結構可以分為用戶管理、數據安全、數據中心軟硬件安全和控制權轉移引發的安全問題4個層面,為了保障云計算安全可靠也需要從這4個層面同時人手。公共云安全體系結構如圖1
2.1 用戶管理
為確保僅讓已知和授權的用戶訪問和使用云計算中心的計算資源及數據,同時保護數據及計算資源不被非授權用戶訪問和使用,必須對用戶身份進行有效管理。用戶管理應包括認證、授權和審計3種基本功能 。
為實現用戶應用在云端計算,同時也為保證用戶如同在一個可互操作的單一系統上一樣訪問所有相關云資源,云服務提供商必須提供聯合身份驗證。聯合是指多個獨立資源(物理/虛擬硬件、軟件、網絡、身份、相關配置信息等)組合充當單一資源的能力。聯合身份驗證是使云計算成為可能的一個基本條件。認證是核實用戶或系統身份的過程,用戶要使用云計算數據中心資源(包括硬件、軟件及數據)需取得相關信任憑證。信任是指雙方能通過身份驗證機構定義信任關系的能力。這一身份驗證機構能交換憑證(通常是用戶名/密碼和X.509證書),然后使用這些憑證確保消息安全,創建署名安全令牌,用戶通過它們提交任務并接收響應信息。為確保賬戶安全,這些信息還需要周期性更新,比如周期性地修改密碼,并在不需要的時候取消賬戶登錄系統的能力。
授權是確認用戶或系統身份后授予使用計算資源和訪問數據權限的過程。授權被用來確定用戶或服務是否具有執行某項操作所需要的權限。用戶的所有操作還應該被審計。審計是指查看和檢查有關認證、授權的記錄和活動,以確定系統控制的完備性、核實與已有安全策略及過程的符合性,檢測安全服務中的違規事件,并能給出相應的對策和整改意見。
2.2 數據安全
相對于傳統的計算模式將數據保存在自己可控的局域網環境中,在公共云計算環境中,用戶數據保存在云中,數據擁有和管理相分離。為實現用戶數據安全,保護云計算中心中的用戶數據免遭破壞、惡意修改或泄密,在公共云環境中,要切實保障數據的傳輸安全和存儲安全。
數據傳輸安全
在非專用或分布式網絡環境中,用戶對在網絡中交換數據所使用的通信信道控制能力很弱,通常沒有。如果正在交換的數據沒有安全地進行交換,則在這種情況進行認證的意義不大。為保證數據在傳輸過程中的安全性,通常采用的方法有兩種:一種通過傳輸層安全性實現,通過使用加密網絡通信信道,如使用虛擬專用網絡(VPN)在用戶和數據中心節點之間提供安全通道,從而確保傳輸的數據是安全的;二是使用數據層的安全性,不對通信信道進行加密,而是對所交換的數據進行加密。在分布式系統中第二種方法效率更高,很容易實現對公共網絡上分發的數據進行加密。不管使用哪種方法,作為云安全的一部分,都應該確保加密機制是安全的,這可能需要經常地修改密鑰和密碼,利用公鑰/私鑰系統可以簡化信息交換以及以后使用新的密鑰更新信息的過程。同時也必須考慮信息安全要求和加密技術對網絡運行負荷帶來的負面影響,如資源開銷、傳輸延遲等,要尋找安全需要與代價間的平衡。
數據存儲安全
用戶把數據存儲在云計算環境中,數據的安全和隱私保護將是用戶首要關心的問題。一方面,網絡黑客通過技術手段可能會對用戶數據造成威脅;另一方面,云服務提供商內部管理人員擁有特權,對用戶數據安全和隱私保護存在潛在威脅,必須采取有效措施預防擁有特權賬戶的管理人員對用戶數據可能造成的破壞。用戶在客戶端針對敏感數據進行加密可大大降低數據泄密風險。
數據殘留是數據在被以某種形式擦除后所殘留的數據碎片,這些碎片有可能被用來重建原始數據 。云服務提供商應保證,在釋放用戶存儲空間后并在重新分配給其他用戶使用前將存儲介質上保留信息完全清除。同時還要向用戶提供完善的數據備份與災難恢復功能 J,這些在保證數據安全方面將發揮重要作用。訪問控制方面,必須靈活融合多類訪問控制方法,如基于屬性和基于憑證的方法。
2.3 數據中心軟硬件平臺安全
云計算數據中心為云用戶提供數據存儲、云計算等服務,是整個云計算體系結構的核心。為確保數據中心安全,需要確保兩方面的安全性:一是抵擋來自外部的安全威脅;二是確保數據中心軟硬件平臺安全平穩運行 。
在物理層面,一方面要考慮廠房安全,要極力避免因突發事件(如斷電、地震等)造成系統停止服務;另一方面云服務提供商還必須對云計算數據中心進行嚴格管理,其中包括對數據中心出入人員授權的管理,保證只有授權人員才可以進入數據中心。針對擁有特權賬戶的管理人員加強管理(比如所有操作記日志),防止數據在物理層面被竊取或破壞。同時還需要對云計算中心進行足夠的監控,配置相應的監控設備,防止數據中心被非法侵入。
云計算服務提供商還需提供云存儲的數據及云應用在服務器端的安全性管理,包括對網絡攻擊的防護和對病毒的檢測和清除,保障云存儲及各個應用的訪問獨立且互不影響。這類安全功能通常由安全軟件提供。安全軟件通過用戶認證、權限控制、訪問審計、入侵檢測、攻擊防護等一系列措施對數據中心內部的信息進行保護。其中,對訪問控制的審核、足夠細粒度的權限和加密密鑰管管理是保護數據和應用的重要功能。通過身份認證、安全審查、數據加密、系統冗余等技術及管理手段提高云計算平臺的健壯性、服務連續性和用戶數據的安全性。
為保證云計算各類應用平穩正常運行,系統必須對整個云計算平臺基礎架構進行全面的監控。讓系統管理員能隨時掌握整個架構的運行情況。監控通常是通過監控軟件實現。監控對象包括系統硬件設備如服務器、存儲設備和網絡等,也包括軟件如各類應用軟件、數據庫、中間件等。通過對重要系統資源的監控,檢測出系統瓶頸和潛在的問題,能為運營商及時優化資源,保證系統可用性及性能提供理論依據,并能在出現嚴重問題的情況下進行自動恢復,以支撐云計算平臺的靈活性和高可用性。如監控系統必須監控CPU分配情況、使用率和負載的實時變化情況,這樣才有可能在某一應用的工作負載發生變化時及時分配相應的資源。監控所產生的結果可以通過監控軟件自動進行處理,也可以提交給系統管理員。監控軟件應該具備完整的監控流程管理功能,能夠進行性能閾值設定,超過閾值后自動發出報警信息,跟蹤報警的原因,并發出相應的管理指令,采取相應的操作等一系列工作,使系統監控處理可以自動完成。此外,監控功能還需具備一定的預測能力,通過歷史數據分析云計算資源池中的資源消耗趨勢、預測和避免問題發生。
2.4 控制權轉移
為保證服務質量(QoS:Quality of Service),用戶通常會和服務提供商簽署服務水平協議(SLA:ServiceLevel Agreement)。SLA通常是購買第三方服務或提供IT服務時最通用的制定服務標準的方式。首先用戶根據自身業務特點提出相應的QoS要求,為了能在使用相關服務的過程中始終滿足用戶需求,云服務提供商需要對服務質量要求進行量化,并且與用戶協商制定相應的SLA;最后根據sLA內容進行資源配置以達到QoS要求。SLA用于確定云計算服務商實際能夠提供給用戶的服務,以及這些服務能達到的水平。當服務提供商提供的服務未達到SLA要求時,用戶將得到相應的補償。能否按SLA提供云計算服務,是衡量云服務提供商運營水平最重要標準。除了制定相應的服務水平協議之外,由于云計算是個新興產業,國家還需要在相關領域制定相應的法律、法規,以來規范云服務提供商和用戶雙方的行為。
3 、安全評估
云計算是一個新興產業,商業運作模式還不成熟,用戶與云計算服務商之間在管理范圍、責任認定等問題可能存在分歧,如何界定云服務是否安全?制定行業相應的安全標準及其測評體系是解決上述分歧的根本方法 。明確定義安全目標,保護范圍及程度,在賬戶安全、數據安全及隱私保護、數據中心安全和控制權轉移引發的安全問題給出標準化測評方法。安全標準可為云用戶制定安全目標提供參考依據,出現安全事故可利用測評方法快速進行責任認定,解決云用戶和運營商之間分歧。
結 語
云計算具有很好的應用前景,同時由于開放性使得云計算又面臨著前所未有的安全挑戰,要想大規模應用必須解決安全問題。安全性又是個實時問題,需要持續不斷地進行審視,因為不但環境會發生變化,而且隨著云計算技術大規模的應用,需要和需求也可能會發生變化。