导语:Windows Azure是微软基于云计算的操作系统,后更名为“Microsoft Azure”,和Azure Services Platform一样,是微软“软件和服务”技术的名称。
Windows Azure是微软基于云计算的操作系统,后更名为“Microsoft Azure”,和Azure Services Platform一样,是微软“软件和服务”技术的名称。Windows Azure的主要目标是为开发者提供一个平台,帮助开发可运行在云服务器、数据中心、Web和PC上的应用程序。云计算的开发者能使用微软全球数据中心的储存、计算能力和网络基础服务。Azure服务平台包括了以下主要组件:Windows Azure;Microsoft SQL数据库服务,Microsoft .Net服务;用于分享、储存和同步文件的Live服务;针对商业的Microsoft SharePoint和Microsoft Dynamics CRM服务。
Azure是一种灵活和支持互操作的平台,它可以被用来创建云中运行的应用或者通过基于云的特性来加强现有应用。它开放式的架构给开发者提供了Web应用、互联设备的应用、个人电脑、服务器、或者提供最优在线复杂解决方案的选择。Windows Azure以云技术为核心,提供了软件+服务的计算方法。 它是Azure服务平台的基础。Azure能够将处于云端的开发者个人能力,同微软全球数据中心网络托管的服务,比如存储、计算和网络基础设施服务,紧密结合起来。
不管性能如何,必定安全性才是最重要的。
现在谈谈Azure的安全建议,毋庸置疑,Azure的安全性非常复杂。
首先,云基础设施是复杂的,所以如果你不能一次性理解所有内容,也不要太担心。
Azure的基本网络防御和技术
Azure有很多网络防御方法,下面是一些你必须了解的防御技术,我建议你先了解这些:
虚拟网络;
网络安全组;
服务端点;
Azure专用链接;
Web应用程序防火墙;
Azure堡垒;
Azure防火墙;
Azure安全中心;
Azure Sentinel;
DDoS保护;
……
接下来,你需要了解各种应用层防御/技术,比如:
Azure Active Directory;
设置多因素身份验证;
Azure AD特权身份管理;
服务主体和托管身份;
应用程序网关;
应用程序安全组(它们与NSGs相关联);
特定于应用程序的“防火墙”(如;SQL Server, CosmosDB等);
密钥库;
RBAC;
Azure策略和计划;
OAuth 2和OpenID Connect;
特定于应用程序的静态数据加密,例如用于存储帐户;
……
合规性
另一个与安全相关的重要主题是合规性,因为我知道安全性是建立在合规性上。
构建
既然你已经对Azure中与安全相关的核心工具和技术有了基本的了解,那么现在就该创建一些东西了。你决定创造什么取决于你,但我首先要说的是:
1. 在同一个虚拟机网络中创建两个虚拟机,但是使用不同的子网,试着把一个虚拟机和另一个虚拟机连接起来。
2. 使用相同的VM,将一个NSG添加到一个子网中,该子网将阻止所有与其他VM的IP地址之间的通信。你可以从另一台虚拟机ping一个虚拟机吗?
3. 在不同的VNet中创建两个VM,尝试ping它们,是否可行?
4. 加密其中一个虚拟机的硬盘驱动器,你将需要创建一个密钥库来完成此任务;
5. 查看与VM关联的NSG,在Azure安全中心中启用对VM的即时(JIT)访问,看看会发生什么?
6. 创建一个密钥库,添加一个密钥并从Azure函数中提取密钥。这非常复杂,需要向函数添加托管身份,或者在与密钥库相同的VNet中运行该函数。
7. 如果在上面的示例中使用了托管身份,请确保你为密钥保险库分配了最小特权访问权限(只对秘钥有读取访问权限,而没有其他权限);
8. 使用非常具体的操作创建自定义角色;
9. 在存储帐户中创建一个blob,尝试各种授权策略,尤其是SAS令牌。
10. 安装Azure SQL并配置“始终加密”;
11. 使用Azure Monitor查看谁在对你的订阅执行操作;
12. 在某个事件类型上设置警报;
13. 开放Azure安全中心,查看你的问题(红色),查看合规性问题(PCI等);
14. 修复ASC标记的内容;
15. 设置仅允许由硬件支持的Key Vault的策略,并创建非HSM KV(即,不允许Premium)。请记住,部署策略后可能需要30分钟才能生效。具体过程,请点此。
顺便说一下,我经常使用一个名为rg-dev-sandbox的资源组,这样我就可以在完成任务后将资源组删除,不会留下任何东西。
了解了以上关于Azure的基本安全性后,是时候深入学习了。选择一个产品,比如Azure SQL数据库,学习关于该产品的安全性、可靠性、遵从性和隐私方面的所有知识。对于Azure SQL这样的产品,安全性包括:
1. 静态数据的访问策略;
2. 用于静态数据的加密(TDE,总是加密的,列加密);
3. 对线路上的数据进行加密(即TLS !);
4. 审计;
5. 灾难恢复;
6. 安全访问连接字符串;
7. Azure AD与SQL身份验证;
8. 数据屏蔽(不是真正的安全性,但是还是有用的);
9. 威胁保护;
10. Azure SQL防火墙(注意小写的f,因为它不是真正的‘F’irewal;
11. SQL注入问题和补救措施
使用AZ-500认证
我知道有些人对认证持怀疑态度,但Azure认证并不容易,你可以在这里获得更多关于认证的信息。总之,我希望这篇文章能帮助你从另外一个侧面了解Azure的安全。
本文翻译自:https://michaelhowardsecure.blog/2020/02/14/so-you-want-to-learn-azure-security/如若转载,请注明原文地址: