讨论云服务时,安全性是一个关键领域。实际上,Windows Azure 基础结构实施大量的技术和流程来保护环境。此页介绍 Microsoft 的全球基础服务如何运行基础结构以及它们实施的安全措施。

从根本上来说,Windows Azure 必须确保客户数据的机密性、完整性和可用性,就像任何其他应用程序托管平台一样。它还必须提供透明的责任,以允许客户及其代理亲自或由 Microsoft 跟踪对应用程序和基础结构的管理。此部分将根据到目前为止介绍的基本组件和关系,说明 Windows Azure 如何提供信息安全性的这些传统属性。

1. 用于内部控制流量的 SSL 相互身份验证

Windows Azure 内部组件之间的所有通信都通过 SSL 保护。

2. 证书和私钥管理

为了降低向开发人员和管理员公开证书和私钥所带来的风险,证书和私钥都是通过代码使用证书和私钥的机制之外的单独机制进行安装的。证书和私钥通过 SMAPI 或 Windows Azure 门户上传为 PKCS12 (PFX) 文件,上传过程中由 SSL 保护。这些 PKCS12 文件可能受密码保护,如果是这样的话,那么相同消息中还必须包括密码。SMAPI 删除密码保护(如果需要),使用 SMAPI 的公钥对整个 PKCS12 Blob 进行加密,并将其以及一个简短的证书名称(公钥作为元数据)存储到 FC 上的机密存储中。

3. 最低权限客户软件

运行拥有最低权限的应用程序普遍被认为是一种信息安全最佳实践。为了遵循最低权限原则,未为客户授予他们虚拟机的管理访问权限,并且默认情况下,Windows Azure 中的客户软件只能使用低权限的帐户运行(在未来版本中,客户可以自行选择不同的权限模型)。这减少了任何攻击的潜在影响并增加了成功进行攻击的必要难度,即攻击者要想成功,除了利用漏洞外,还需要提升权限。它还防止客户的服务受到其最终用户的攻击。

4. Windows Azure 存储中的访问控制

Windows Azure 存储具有简单的访问控制模型。每个 Windows Azure 订阅可以创建一个或多个存储帐户。每个存储帐户都拥有单个密钥,该密钥用于控制对该存储帐户中所有数据的访问。这支持以下典型情形:存储与应用程序关联,并且这些应用程序对其关联数据具有完全控制权。

5. 虚拟机管理程序、根操作系统和来宾虚拟机的隔离

一个重要边界就是将根虚拟机与来宾虚拟机隔离并将虚拟机管理程序和根操作系统管理的各来宾虚拟机分别隔离的边界。虚拟机管理程序/根操作系统配对机制利用了 Microsoft 数十年的操作系统安全经验以及 Microsoft 近年来在 Hyper-V 方面的技术来提供来宾虚拟机的强大隔离。

6. Fabric Controller 的隔离

有一些重要的控件发挥着中央控制台的作用,很大程度上是 Windows Azure Fabric 的中央控制台,这可以减轻对 Fabric Controller 的威胁,尤其是来自客户应用程序中可能已经受到危害的 FA 的攻击。从 FC 到 FA 的通信是单向的:FA 实施 SSL 保护的服务(从 FC 进行访问),并且仅回复请求。它无法启动至 FC 或其他特许内部节点的连接。FC 具有强大的功能来分析所有响应,就好像这些响应是不受信任的通信一样。

此外,FC 和无法实施 SSL 的设备位于不同的 VLAN 上,这就限制了它们的身份验证接口向托管虚拟机的受危害节点公开。

7. 数据包筛选

虚拟机管理程序和根操作系统提供网络数据包筛选器,这些筛选器可以确保不受信任的虚拟机无法执行以下操作:生成欺骗通信、接收目标并不是它们的通信、将通信指向受保护的基础结构端点、发送或接收不适当的广播通信。

8. VLAN 隔离

VLAN 用于隔离 FC 和其他设备。VLAN 对网络进行分区,以使在不经过路由器传递的情况下,VLAN 之间无法进行通信,这样可以防止受危害节点伪造从其 VLAN 外部到其 VLAN 上的其他节点的通信,并且它还无法窃听并非指向或来自其 VLAN 的通信。

9. 客户访问隔离

管理对客户环境(Windows Azure 门户、SMAPI 等)的访问的系统在 Microsoft 运行的 Windows Azure 应用程序中被隔离。这从逻辑上将客户访问基础结构与客户应用程序和存储隔离开来。

10. 删除数据

在适用情况下,在数据的有用生命周期过后应当继续对数据保密。一旦调用删除操作,Windows Azure 的存储子系统即会使客户数据变为不可用。所有存储操作(包括删除)都能够即刻保持一致。成功执行删除操作会删除对关联数据项的所有引用,并且通过存储 API 也无法访问该关联数据项。已删除数据项的所有副本随后被作为垃圾回收。当重复使用关联存储块存储其他数据时,就会覆盖物理位,这是标准计算机硬盘存在的典型情况。

关于 Azure 安全性的 10 点提示的更多相关文章

  1. Windows Azure HandBook (3) 浅谈Azure安全性

    <Windows Azure Platform 系列文章目录> 2015年3月5日-6日,参加了上海的Azure University活动.作为桌长与微软合作伙伴交流了Azure相关的技术 ...

  2. Windows Azure Virtual Network (10) 使用Azure Access Control List(ACL)设置客户端访问权限

    <Windows Azure Platform 系列文章目录> 本文介绍的是国内由世纪互联运维的China Azure. 我们在创建完Windows Azure Virtual Machi ...

  3. [New Portal]Windows Azure Virtual Machine (10) 自定义Windows Azure Virtual Machine模板

    <Windows Azure Platform 系列文章目录> 通过之前的文章,我相信大家对微软Windows Azure Virtual Machine有一定的了解了. 虽然微软提供了非 ...

  4. 增进离岸Java开发效率的10个提示

    本文来源于我在InfoQ中文站原创的文章,原文地址是:http://www.infoq.com/cn/news/2013/12/10-tips-offshore-java-effective Cygn ...

  5. Windows Azure Web Site (10) Web Site测试环境

    <Windows Azure Platform 系列文章目录> 我们知道,在使用Azure Cloud Service的时候,会有2个不同的环境,称为Production环境和Stagin ...

  6. Windows Azure Cloud Service (10) Role的生命周期

    <Windows Azure Platform 系列文章目录> 在上一章内容中,我们提到了Windows Azure会依次调用角色(Role)实例的OnStart()方法和Run()方法. ...

  7. 使用 FireMonkey 构建优秀专业 Android 应用的10点提示

    原文链接:http://www.firemonkeyx.com/ten-tips-for-building-stunning-professional-android-apps-with-firemo ...

  8. 打开Delphi 10.2提示脚本错误的解决方法

    HKEY_CURRENT_USER\SOFTWARE\Embarcadero\BDS\18.0\Known IDE Packages $(BDS)\Bin\CommunityToolbar240.bp ...

  9. Windows Azure 安全最佳实践 - 第 2 部分:Azure 提供哪些现成可用的安全机制

    在WindowsAzure安全最佳实践 - 部分:深度解析挑战防御对策中,我介绍了威胁形势以及在您的应用程序中采用深度防御的计划. 在本部分中,我将说明 Windows Azure的安全是一项共同责任 ...

随机推荐

  1. Oracle恢复drop误删除的表和建用户操作

    一.表的恢复 对误删的表,只要没有使用PURGE永久删除选项,那么从flash back区恢复回来希望是挺大的.一般步骤有: 1.从flash back里查询被删除的表 select * from r ...

  2. file_put_contents(): supplied resource is not a valid stream resource

    在项目开发的过程中 自己想把输出和一些想要内容输出到日志文件中,便于查看 但是在输入的过程中报了这样一个错误: file_put_contents(): supplied resource is no ...

  3. Java-Maven-Runoob:Maven环境配置

    ylbtech-Java-Maven-Runoob:Maven环境配置 1.返回顶部 1. Maven 环境配置 Maven 是一个基于 Java 的工具,所以要做的第一件事情就是安装 JDK. 如果 ...

  4. python下载指定页面的所有图片

    实现步骤: 1.下载页面源码 2.对页面进行解析,获取页面中所有的图片路径 3.下载图片到指定路径 代码实例: # coding: utf-8 import urllib2 # 该模块用于打开页面地址 ...

  5. U-boot分析与移植(3)----U-boot stage2分析

    一来到void start_armboot (void)函数,马上出现两个很重要的数据结构gd_t和bd_t 1.gd_t : global data数据结构定义,位于文件 include/asm-a ...

  6. 用Python语言设计GUI界面

    我们大家都编写过程序,但是如果能够设计一个GUI界面,会使程序增添一个很大的亮点!今天就让我们来用目前十分流行的python语言写出一个最基本的GUI,为日后设计更加漂亮的GUI打下基础. 工具/原料 ...

  7. OpenGL3.x,4.x中使用FreeImage显示图片的BUG-黑色,或颜色分量顺序错乱

    //参照FreeImage官网给出的CTextrueManager写的加载函数 //官方给的例子是用opengl3.0以下的旧GL写的,没有使用glGenerateMipmap(GL_TEXTURE_ ...

  8. linux启动lcd屏如水纹状波动,不稳…

    开发环境:arm-s3c2416.ubuntu. 内核:linux2.6.26 病症:内核启动时,arm的lcd屏幕出现抖动现象,如水纹状波动,屏幕最下面还有白线闪动,甚至lcd有很多亮点等现象 分析 ...

  9. Init & Deinit & ARC

    [Init & Deinit] 1.switf中,init不返回值,只负责初始化成员变量.在init方法中可以初始化常量. 2.默认初始化. 3.Swift provides an autom ...

  10. Nginx Rewrite研究笔记

    原文出自:http://blog.cafeneko.info/2010/10/nginx_rewrite_note/ 在新主机的迁移过程中,最大的困难就是WP permalink rewrite的设置 ...