很多人都认为云计算应当是一个存储或承载东西的所在,但是究其根本云计算并不是一个硬盘驱动器或一个处理器,它是一种编程语言。实际上,它是一个通过神奇的应用程序编程接口(API)互相连接的程序与平台的组合。对云计算有着真知灼见的人士都明白,它并不仅仅是一个新的消费或交付模式,它是一个将整个互联网世界转变为一个大型编程平台的新模式。
云计算的基本概念就是收集物理资源,将它们汇集成资源池,然后根据我们的需求进行消费(或交付)。我们配置资源、使用资源,然后取消对资源的配置并将其送回至资源池。这对整个云计算堆栈:IaaS、PaaS以及SaaS皆是如此。为了达到这一目标,我们需要某种程度的自动化业务流程和管理。如果我们需要自动化,那就意味着我们需要API以用于自动化的设计、实施和管理自动。
例如,当你使用华而不实的网络接口在你的云计算平台上配置一个新实例(虚拟机)时,它使用API调用云计算控制器来配置和使用资源。云计算控制器还通过API调用不同的组件来完成绝大多数的任务。对于大多数平台上的一个简单实例,这就意味着调用一个计算机节点来管理该实例,一个容量控制器(和节点)提供存储,一个网络节点提供IP地址,调度和/或消息服务器来协调一切,而你的实例本身也就知道了它的地址和其他的资源。
有一些非常酷的工具和技术都是基于这一API驱动模态的,但是其落伍的原因之一就是安全性。有很少的安全工具会支持API管理基本功能,这大大限制了它们在云计算和安全方面的有效性。让我们通过一个潜在的场景来显示安全自动化是如何的强大。
我曾工作过的IT部门的共同问题是跟踪资产,确保安全配置资产并正确保护网络中的资产,同时留意用户与数据的状况。我们所使用的工具和流程,其中大部分是手工操作的。
但是想象一下,如果我们能够实现几乎所有这些功能的自动化。在一个连接至云计算网络门户的用户检查x尺寸和配置的新部门Sharepoint堆栈的用例中,云计算控制器首先通过非安全政策运行,以确保授权用户和部门请求资源,然后开始配置过程。
随着实例运行,它已通过防火墙与外部世界隔离,并自动打补丁更新至最新水平,配置至当前的安全和运行标准。然后,实例与云计算控制器通过一系列API调用一套安全工具。
云计算控制器使用漏洞管理工具自动注册实例、执行评估并在发生任何故障时将其隔离。
作为配置脚本程序的一部分,安装不同安全代理,新的实例使用日志管理、SIEM、防病毒以及其他核心安全和合规性工具进行注册。然后,基于实例的属性,这些工具把不同的配置参数发送回代理。
再次,基于实例的属性,建立起适当的网络防火墙和IDS/IPS规则。既然我们无法确认实例将始终停留在我们放置在它的位置,在主机中通过网络安全代理实施那些相同规则中的一些。
然后,实例存储运行进行周期性DLP扫描,此举根据用户和业务单元将其加入合适的政策小组。或者,可能DLP按照自己的计划表扫描实例,如果检测到敏感数据,它就会通过与那些工具交互重新配置安全参数,其中包括防火墙/IPS规则、访问控制、以及其他。
我可以这样工作一整天,但是你明白这是怎么一回事。通过取代手工管理所有这些,我们在我们的云计算和安全中嵌入功能就可实现更高程度的自动化。如今,我们已看到这一战略被成功地应用于诸如Chef和Puppet之类的配置和系统管理工具。
在绝大多数情况下,当谈及安全性,大多数的自动化都受限于嵌入云计算平台的安全性功能(身份与访问管理都是最为成熟的)。随着时间的推移,这种情况将会改变,因为越来越多的客户需要能够从他们的安全供应商那里得到更好的自动化支持。
上述的实例是很简单的;我坚持尝试我们最为熟悉的真实安全功能。希望你能够看到,这事实上确实是刚刚开始,随着时间的推移,云计算改进安全性要比它对安全性的伤害更多。