云环境由多个“租户”共享,服务提供商对于这个环境中的数据有特许存取权。因此云中存储的机密数据必须通过访问控制组合、合同责任和加密措施等进行保护。其中,加密提供的好处有:对云服务提供商的依赖性最小、减少对运行错误(operationalfailures)检测的依赖性。
加密网络传输中的数据:加密在网络中传输的多用途机密数据(credentials)是极其必要的,比如信用卡号、密码和私钥等。虽然云提供商网络可能比开放网络安全,但是他们使用其特有的、由许多不同的组成部分构成的架构,且由不同的组织共享云。因此,即便是在云提供商的网络中,保护这些传输中的敏感数据和受监管信息也是非常重要的。通常情况下,这些在SaaS、PaaS和IaaS环境中实施起来的难易程度是一样的。
加密静止数据:加密磁盘上的数据或生产数据库中数据很重要,因为这可以用来防止恶意的云服务提供商、恶意的邻居“租户”及某些类型应用的滥用。对于长期的档案存储来说,一些用户加密他们自己的数据然后发送密文到云数据存储商。这些客户控制并保存密钥,在自己需要的情况下解密数据。在IaaS环境中,使用多种提供商和第三方工具加密静止数据很普遍。在PaaS环境中加密静止数据一般会较复杂,需要提供商提供的或专门定制的设备。在SaaS环境中加密静止数据是云用户无法直接实施的,需要向他们的提供商请求。加密备份媒介中的数据。这可以防止对丢失或被窃媒介的滥用。理想的情况是云服务提供商以透明模式实施。但是,作为用户和数据提供者,验证是否有这种加密是你自己的责任。对加密基础设施的一个考虑因素是处理数据的寿命。除这些常见的加密应用之外,对云提供商可能遭受的特殊攻击同样要求进一步分析加密动态数据的方式,包括内存中的数据。
密钥管理
现有的云服务提供商可以提供基础加密密钥方案来保护基于云的应用开发和服务,或者他们将这些保护措施都交由他们的用户决定。当云服务提供商向支持健壮密钥管理的方案发展时,需要做更多工作来克服采用的障碍。正在制定的标准应该在不久的未来解决这个问题,但是工作仍然在进行中。云计算中还有很多密钥管理有关的问题和挑战。
保护密钥存储(KeyStore):密钥存储必须像其他敏感数据一样进行保护。在存储、传输和备份中都必须保护,不适当的密钥存储可能危害所有加密数据。
访问密钥存储:必须限制只有特定需要单独密钥的实体可以访问密钥存储。还需要相关策略来管理密钥存储,使用角色分离来帮助进行访问控制:给定密钥的使用实体不能是存储该密钥的实体。
密钥备份和恢复:丢失密钥无疑意味着丢失了这些密钥所保护的数据。尽管这是一种销毁数据的有效过程,但是意外丢失保护关键任务数据的密钥会毁灭一个业务,所以必须执行安全备份和恢复解决方案。
有很多标准和指导方针适用于云中的密钥管理。OASIS密钥管理协同协议(KMIP)就是云中协同密钥管理的新标准。IEEE1619.3标准涵盖了存储加密和密钥管理,尤其适用于存储IaaS。
建议
使用加密把数据使用与数据保管分离。
把存放数据的云服务提供商与密钥管理分开,建立一系列的“分离”(separation)。这即保护了云提供商,也保护了用户。避免其由于法律要求而提供数据时产生冲突。
当在合同中约定加密时,确保加密遵循了相关行业和政府标准。
了解是否云提供商的设施提供了角色管理及职责分离。
如果云提供商必须进行密钥管理,了解提供商是否定义了密钥管理生命周期的过程:密钥如何产生、使用、存储、备份、恢复、轮换和删除。而且,了解是否每个客户使用了相同密钥或是否每个客户有其自己的密钥系列。
除了确保受监管和/或敏感客户数据在静止时是加密的之外,还要确保在其在云提供商的内部网络传输时是加密的。在IaaS环境中,这将由云用户选择实施;在PaaS环境中,由用户和提供商共同分担责任;在SaaS环境中,由云提供商来负责。
在IaaS环境中,理解由传统加密分别保护的敏感信息和关键材料如何在使用中可能暴露(exposed)。例如,虚拟机交换文件与其他临时数据存储位置可能也需要进行加密。
总结
强加密及密钥管理是云计算系统需要用以保护数据的一种核心机制。由于加密本身不能保证防止数据丢失,加密提供了资源保护功能,同时密钥管理则提供了对受保护资源的访问控制。在云计算安全中加密和密钥管理在其中起了重要的作用,为了避免敏感数据不被恶意用户轻易拿到,除了对数据的存取和访问做严格的限制以外,还需要对其进行加密,因为加密算法强度很大的情况下,对加密数据的破解就变得十分的困难了,从而保证数据一旦失窃,其中的重要信息并不容易被恶意用户窃取和使用。同样对于密钥来说相当于云计算过程中,进行特定操作的认证凭据,密钥的管理是否完善直接关系到云计算中认证能否正常进行。