在WindowsAzure安全最佳實踐 - 第 1部分:深度解析挑戰防護對策中,我介紹了威脅形勢以及在您的應用程序中採用深度防護的計劃。數據庫
在本部分中,我將說明 Windows Azure的安全是一項共同責任,Windows Azure爲您的應用程序提供超出內部部署應用程序需求的強大安全功能。但另外一方面,它也暴露了您應該考慮的其餘漏洞。最後,在應用程序開發過程當中,您應該積極保護應用程序的安全。windows
本節將歸納介紹 Windows Azure提供的功能。有關詳細信息,請參閱全球基礎服務在線安全。全球基礎服務團隊提供值得信賴的可用在線服務,可爲您和 Microsoft Windows Azure 帶來競爭優點。安全
此係列文章旨在爲您提供更多背景信息,讓您可以編寫出適用於公共雲的理想應用程序。服務器
Windows Azure如何幫助保護主機?cookie
您可能會說「彆着急 Bruce。Windows Azure 如何幫助保護主機?」網絡
WindowsAzure安全概述全面歸納了 Windows Azure提供的安全功能。該文章由Charlie Kaufman和 Ramanathan Venkatapathy撰寫。它從客戶和 Microsoft運營的角度分析了可用的安全功能,介紹幫助提升Windows Azure安全性的人員和流程,並簡單討論了合規性。我將總結這些功能,並建議您閱讀並理解該概述以進一步深刻了解。app
Windows Azure 旨在將一般構成應用程序(服務器、操做系統、網絡和數據庫軟件等)基礎的大部分基礎結構抽象化,讓您能夠專一於構建應用程序。框架
從表面看,您會看到基於雲的計算和存儲,以便您構建和管理應用程序及其相關配置。遷移到 Windows Azure的每種方式可能都要求您具備您所控制的必定程度的受權。ide
我將在後面的文章中介紹您應針對身份驗證機制執行的一些最佳實踐。工具
Windows Azure 必須確保客戶數據的機密性、完整性和可用性,就像任何其餘應用程序託管平臺同樣。它還必須提供透明問責,讓您和他們的代理可以跟蹤您本身以及 Microsoft對應用程序和基礎設施的管理狀況。
Windows Azure 基於客戶指定的角色實例數量,爲每一個角色實例建立一個虛擬機 (VM),而後在這些 VM上運行角色。這些 VM反過來在專用於雲中的虛擬機管理程序(Windows Azure虛擬機管理程序)上運行。
有一個 VM比較特殊:它運行一個託管結構代理 (FA)、名爲根操做系統的加固操做系統。FA反過來用於管理您的應用程序和存儲節點。FA由結構控制器 (FC)進行管理,位於計算和存儲節點以外(計算和存儲羣集由獨立的 FC進行管理)。
關於 Azure安全性的 10 大注意事項
Windows Azure 必須確保客戶數據的機密性、完整性和可用性,就像任何其餘應用程序託管平臺同樣。它還必須提供透明問責,讓客戶和他們的代理可以跟蹤他們本身以及 Microsoft對應用程序和基礎設施的管理狀況。
關於 Azure 安全性的 10 大注意事項這篇博客文章很好地總結了這些功能:
· 內部控制流量的 SSL相互身份驗證。使用 SSL保護 Windows Azure內部組件之間的全部通訊。
· 證書和私鑰管理。爲了下降證書和私鑰暴露於開發人員和管理員面前的風險,這些證書和私鑰經過獨立的機制安裝,而非經過使用這些證書和私鑰的代碼安裝。
· 最小權限客戶軟件。您和其餘客戶對他們的 VM沒有管理訪問權限,默認狀況下 Windows Azure中的客戶軟件只能在低權限賬戶下運行(在之後的版本中,客戶能夠選擇其餘權限模式)。
· Windows Azure存儲中的訪問控制。每一個存儲賬戶都有一個密鑰,用於控制對存儲賬戶中全部數據的訪問。這支持如下典型情形:存儲與應用程序關聯,這些應用程序徹底控制其相關數據。
· 隔離虛擬機管理程序、根操做系統和來賓 VM。臨界邊界將根 VM 與來賓 VM 隔離並將不一樣的來賓 VM 相互隔離,這些 VM 由虛擬機管理程序和根操做系統進行管理。
. 隔離Fabric Controllers。Fabric Controllers是Windows Azure Fabric主要部分的中心協調指揮,對它進行重要控制能夠減輕對Fabric Controllers的威脅,尤爲是客戶應用程序內可能受影響的 FA。
· 數據包篩選。虛擬機管理程序和根操做系統提供了網絡數據包篩選器,確保不可信的 VM沒法產生僞造流量,沒法接收發給其餘 VM的流量,沒法與受保護的基礎結構端點直接通訊,且沒法發送或接收不適用的廣播流量。
· VLAN隔離。VLAN用於隔離 FC 和其餘設備。
· 隔離客戶訪問。用於管理對客戶環境的訪問權限的系統(WindowsAzure門戶、SMAPI 等)隔離在由 Microsoft 運行的 Windows Azure 應用程序內。
· 刪除數據。在適當的狀況下,超過有效的數據生命週期後仍應保密。調用刪除操做後,Windows Azure存儲子系統將客戶數據變爲不可用。
重要提示:即便是最強大的可用安全控件,也不會防範得到對憑據或密鑰未經受權的訪問權限的攻擊者。所以,憑據和密鑰管理是 Windows Azure安全設計和實施的關鍵組成部分。
數據完整性
要將數據計算和存儲工做負載外包給 Windows Azure的客戶固然但願數據能免遭未經受權的更改。詳情如Windows Azure安全概述中所述。但在這裏我想強調幾個關鍵點。
客戶數據完整性保護的主要機制在於Fabric VM設計自己。每一個 VM 鏈接到三個本地虛擬硬盤 (VHD)。
• D:盤包含一個來賓操做系統版本,已更新最新的相關補丁,且可供客戶選擇。
• E:盤包含 FC基於客戶提供的數據包構建的映像。
• C:盤包含配置信息、分頁文件和其餘存儲。
操做系統和應用程序的完整性。D:和 E:虛擬驅動器實際上爲只讀,由於它們的 ACL 設置爲禁止
客戶進程的寫入權限。這種設計嚴格保留了基礎操做系統和客戶應用程序的完整性。
配置完整性。只有經過 Windows Azure門戶或 SMAPI 訪問他們的託管服務的受權客戶才能更改配置文件。根據在安全概述中描述的內部流程,在應用程序的生命週期中,客戶配置的完整性會被保護、被維護並被持久化。
存儲。每一個存儲賬戶都有兩個存儲賬戶密鑰,用於控制對該存儲賬戶中全部數據的訪問權限,所以只要能夠訪問存儲密鑰,便可徹底控制相關數據。
Fabric。Fabric自己的完整性經過引導操做獲得妥善管理。
可用性
雲平臺提供的主要優勢之一是基於使用虛擬技術達成的擴展冗餘的強大可用性。
複製的數據。數據在 Windows Azure中被複制到Fabric內的三個獨立節點,以將硬件故障的影響減至最低。
地域分散的數據。客戶能夠建立第二個用於提供熱故障切換功能的存儲賬戶,以利用 Windows Azure基礎結構的地域分散特性。您能夠在 Microsoft設施之間複製和同步數據。客戶也能夠編寫自定義角色,從存儲中提取數據進行私人異地備份。
每一個 VM上的來賓代理 (GA)都會監視 VM 的運行情況。
服務操做
雲計算平臺其實是外包計算環境,所以它必須可以按期向客戶及其指定代理演示其安全運行。Windows Azure實施多層監控、記錄和報告,以向客戶提供這種可見性。首先,監控代理 (MA)收集許多位置(包括 FC和根操做系統)的監控和診斷日誌信息,並將其寫入日誌文件。最終將通過整理的一部分信息推送到預先配置的 Windows Azure存儲賬戶中。此外,監控數據分析服務 (MDS)是一項獨立的服務,
可讀取各類監控和診斷日誌數據,並總結/整理信息,同時將其寫入到集成日誌中。
服務操做。按設計向 Windows Azure開發人員和管理員給予足夠的權限,以執行指派的運營和改進服務的職責。如本文檔中所述,Microsoft部署包括如下機制在內的預防、偵測和被動式控制的組合,以幫助防範未經受權的開發人員和/或管理員操做:
· 對敏感數據進行嚴格的訪問控制
· 結合使用各類控制,從而大大加強了對惡意活動的獨立檢測力度
· 多層監控、記錄和報告
安全響應。可將 Microsoft安全漏洞報告至Microsoft 安全響應中心或經過電子郵件發送至 secure@microsoft.com。Microsoft將按照統一流程來評估和響應經過標準流程報告的漏洞和事件。
網絡。經過對發送至和來自其餘網絡的流量強大篩選功能將 Windows Azure內部網絡隔離開來。這爲高速低風險的內部網絡流量提供了一個「基架」,能夠防範通常的惡意活動。
物理安全。系統不會比運行系統的物理平臺更安全。Windows Azure運行於地域分散的 Microsoft設施,與其餘 Microsoft Online Services共享空間和設施。每一個設施設計爲全天候運行,並採用各類措施以防止運營因停電、物理入侵和網絡中斷而受到影響。這些數據中心符合有關物理安全性和可靠性的行業標準,由 Microsoft運營人員進行管理和監控。它們設計用於「熄燈」操做。
合規性
可信的第三方認證提供了一個行之有效的方式,演示咱們如何保護客戶數據,而不給予獨立審計師團隊過多的訪問權限,由於這可能會威脅到總體平臺的完整性。
ISO 27001
針對信息安全管理系統 (ISMS)的在線服務安全性與合規性 (OSSC)使用ISO/IEC 27001:2005信息技術 — 安全技術 — 信息安全管理系統 —要求 (ISO/IEC 27001:2005)做爲基礎,由於它提供了一個完善的框架,可將風險評估歸入運行雲基礎結構的平常運營中。(有關該標準的副本,請訪問http://www.iso.org。)
Windows Azure的核心服務在成功經過英國標準協會 (BSI) 的審計以後,又經過了ISO27001認證。您能夠單擊此處查看 ISO 證書的詳細信息,其中列出瞭如下範圍:
MicrosoftWindows Azure的信息安全管理系統包括對計算、存儲 (XStore)、虛擬網絡和虛擬機服務的開發、操做和支持,符合 Windows Azure ISMS於 2011 年 9 月 28日發佈的適用性聲明。ISMS知足 ISO/IEC 27001:2005 ISMS要求標準的條件。
ISO認證涵蓋如下 Windows Azure功能:
· 計算(包括 Web role和 Worker role)
· 存儲(包括 Blobs、表和隊列)
· 虛擬機(包括 VM role)
· 虛擬網絡(包括 TrafficManager和 Connect)
上述功能包括 Windows Azure服務管理功能和 Windows Azure管理門戶,以及用於監控、運營和更新這些服務的信息管理系統。
Microsoft全球基礎服務部用於託管 Windows Azure的數據中心得到了單獨的ISO 27001 認證。
瞭解有關 ISO 27001 認證的詳細信息。查看Windows Azure 的證書。
更新:Windows Azure團隊推出了 Windows Azure 信任中心,讓客戶和合做夥伴可以更方便地訪問合規性信息。請參閱推出的 Windows Azure 信任中心。
合規性框架
Microsoft 在線服務合規性框架(合規性框架)是 OSSC 針對該需求而制定的。該合規性框架包含用於定義合規性域、肯定哪些目標適用於指定的團隊或資產,以及瞭解如何知足域控制目標的詳細信息的標準方法,該框架適用於一系列指定的法規或要求。
Microsoft 承諾遵照 Microsoft在線服務合規性框架。連接中的內容更詳細地介紹了合規性框架,並提供了關於如何開發合規性域,以及在特定行業標準或法規要求的背景下對其應用控制目標的示例。GFS部門的 OSSC 團隊採用 Microsoft 依據多年管理安全風險的經驗而制定的相同安全性原則和流程。
Safe Harbor
Microsoft Corporation簽署了SafeHarbor,並承諾履行此框架下的全部義務。
地理位置選擇
您能夠選擇數據的存儲位置。您能夠跨多個系統、地域和監管區域細分客戶數據和處理。
Microsoft 世界各地數據中心中的數據都基於您在 Azure門戶中建立存儲時指定的地理位置屬性。您能夠主動選擇監管的數據駐留的地理位置,將合規性風險降至最低。
參考
· Windows Azure 得到英國標準協會的 IS0 27001 認證
· 適用於 Microsoft 雲基礎結構的信息安全管理系統
· 開發 Windows Azure 應用程序的最佳安全作法。
· 網絡直播:在線服務安全性和合規性:Microsoft 在線服務合規性框架。
· 白板會話:在線服務安全性和合規性:Microsoft 在線服務合規性框架。
下一篇文章
Windows Azure 安全最佳實踐 - 第 3 部分:肯定安全框架。這篇文章探討了如何檢查應用程序並肯定攻擊面。安全框架的概念是一種方法,即先查看應用程序以肯定威脅和響應[MX(1] ,再開始編碼。我爲您提供了一些清單,您能夠在構建應用程序時使用。
如下是本系列中的文章的連接:
· Windows Azure 安全最佳實踐 - 第 1 部分:深度解析挑戰防護對策 。
· Windows Azure 安全最佳實踐 - 第 3 部分:肯定安全框架。
· Windows Azure 安全最佳實踐 - 第 4 部分:須要採起的其餘措施。
· Windows Azure 安全最佳實踐 - 第 5 部分:基於Claims的標識,單點登陸。
· Windows Azure 安全最佳實踐 - 第 6 部分:Azure 服務如何擴展應用程序安全性。
· Windows Azure 安全最佳實踐 - 第 7 部分:提示、工具和編碼最佳實踐。
本文翻譯自: