在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 部分:提示、工具和编码最佳实践。
本文翻译自: