关于 Azure 安全性的 10 点提示
讨论云服务时,安全性是一个关键领域。实际上,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 点提示的更多相关文章
- Windows Azure HandBook (3) 浅谈Azure安全性
<Windows Azure Platform 系列文章目录> 2015年3月5日-6日,参加了上海的Azure University活动.作为桌长与微软合作伙伴交流了Azure相关的技术 ...
- Windows Azure Virtual Network (10) 使用Azure Access Control List(ACL)设置客户端访问权限
<Windows Azure Platform 系列文章目录> 本文介绍的是国内由世纪互联运维的China Azure. 我们在创建完Windows Azure Virtual Machi ...
- [New Portal]Windows Azure Virtual Machine (10) 自定义Windows Azure Virtual Machine模板
<Windows Azure Platform 系列文章目录> 通过之前的文章,我相信大家对微软Windows Azure Virtual Machine有一定的了解了. 虽然微软提供了非 ...
- 增进离岸Java开发效率的10个提示
本文来源于我在InfoQ中文站原创的文章,原文地址是:http://www.infoq.com/cn/news/2013/12/10-tips-offshore-java-effective Cygn ...
- Windows Azure Web Site (10) Web Site测试环境
<Windows Azure Platform 系列文章目录> 我们知道,在使用Azure Cloud Service的时候,会有2个不同的环境,称为Production环境和Stagin ...
- Windows Azure Cloud Service (10) Role的生命周期
<Windows Azure Platform 系列文章目录> 在上一章内容中,我们提到了Windows Azure会依次调用角色(Role)实例的OnStart()方法和Run()方法. ...
- 使用 FireMonkey 构建优秀专业 Android 应用的10点提示
原文链接:http://www.firemonkeyx.com/ten-tips-for-building-stunning-professional-android-apps-with-firemo ...
- 打开Delphi 10.2提示脚本错误的解决方法
HKEY_CURRENT_USER\SOFTWARE\Embarcadero\BDS\18.0\Known IDE Packages $(BDS)\Bin\CommunityToolbar240.bp ...
- Windows Azure 安全最佳实践 - 第 2 部分:Azure 提供哪些现成可用的安全机制
在WindowsAzure安全最佳实践 - 部分:深度解析挑战防御对策中,我介绍了威胁形势以及在您的应用程序中采用深度防御的计划. 在本部分中,我将说明 Windows Azure的安全是一项共同责任 ...
随机推荐
- Ubantu中安装sublime
Sublime-text-3的安装步骤 添加Sublime-text-3软件包的软件源 sudo add-apt-repository ppa:webupd8team/sublime-text-3 ...
- asp+jquery+ajax,asp后台程序执行不正常
项目中前台页面通过jquery .ajax功能将关键数据传递到后台并写入数据库,调试中发现后台程序一直没有正常执行,后反复排查 发现asp程序中不能包含#include file语句
- 51nod 1362 搬箱子——[ 推式子+组合数计算方法 ] [ 拉格朗日插值 ]
题目:http://www.51nod.com/Challenge/Problem.html#!#problemId=1362 方法一: 设 a 是向下走的步数. b 是向右下走的步数. c 是向下走 ...
- bzoj 1004 [HNOI2008]Cards && poj 2409 Let it Bead ——置换群
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1004 http://poj.org/problem?id=2409 学习材料:https:/ ...
- 平台调用之如何利用VS2013 C#调试C++DLL库
对于托管代码调用非托管DLL文件,已经是非常普遍的事情,下面写一下如何通过托管代码(C#)像调试托管代码一样调试DLL中的代码. 注意:(1)[dll工程和调用dll的exe工程需要在同一个解决方案中 ...
- ffmpeg超详细综合教程——摄像头直播
本文的示例将实现:读取PC摄像头视频数据并以RTMP协议发送为直播流.示例包含了1.ffmpeg的libavdevice的使用2.视频解码.编码.推流的基本流程具有较强的综合性.要使用libavdev ...
- git 本地文件里内容 操作记录
本地环境文件合并分支(以下的都分别 commit提交了的) [一.分支[追加] 和 [新增] 新信息 合并主线 情景] 分支内容: dr.find_element_by_id("su&qu ...
- FTP文件传输协议两种模式 ftp协议集,错误码集,ftp客户端命令集
TCP/IP协议中,FTP标准命令TCP端口号为21,Port方式数据端口为20.FTP协议的任务是从一台计算机将文件传送到另一台计算机,它与这两台计算机所处的位置.联接的方式.甚至是是否使用相同的操 ...
- mysql函数之一:INSTR、LOCATE、POSITION VS LIKE
LOCATE.POSITION和INSTR函数相似功能实例 使用LOCATE.POSITION和INSTR函数查找字符串中指定子字符串的开始位置.SQL语句如下: mysql>SELECT LO ...
- javascript知识
JavaScript概述 JavaScript的历史 1992年Nombas开发出C-minus-minus(C--)的嵌入式脚本语言(最初绑定在CEnvi软件中).后将其改名ScriptEase.( ...