2.4 云计算安全设计原则
云计算作为一种新兴的信息服务模式,尽管会带来新的安全风险与挑战,但其与传统IT信息服务的安全需求并无本质区别,核心需求仍是对应用及数据的机密性、完整性、可用性和隐私性的保护。因此,云计算安全设计原则应从传统的安全管理角度出发,结合云计算自身的特点,将现有成熟的安全技术及机制延伸到云计算安全设计中,满足云计算的安全防护需求。
2.4.1 最小特权
最小特权原则是云计算安全中最基本的原则之一,它指的是在完成某种操作的过程中,赋予网络中每个参与的主体必不可少的特权。最小特权原则一方面保证了主体能在被赋予的特权之中完成需要完成的所有操作;另一方面保证了主体无权执行不应由它执行的操作,即限制了每个主体可以进行的操作。
在云计算环境中,最小特权原则可以减少程序之间潜在的相互影响,从而减少、消除对特权无意的、不必要的或者不适当的使用。另外,能够减少未授权访问敏感信息的机会。
在利用最小特权原则进行安全管理时,对特权的分配、管理工作就显得尤为重要,所以需要定期对每个主体的权限进行审计。通过定期审核来检查权限分配是否正确,以及不再使用的账户是否已被禁用或删除。
2.4.2 职责分离
职责分离是在多人之间划分任务和特定安全程序所需权限的概念。它通过消除高风险组合来限制人员对关键系统的权力与影响,从而降低个人因意外或恶意而造成的潜在破坏。这一原则被应用于云的开发和运行的职责划分上,同样也应用于云软件开发生命周期中。一般情况下,云的软件开发为分离状态,确保在最终交付物内不含有未授权的后门,确保不同人员管理不同的关键基础设施组件。
此外,职责分离还伴随着岗位轮换,如图2-9所示。管理层应给重要岗位的员工安排假期,并在该员工休假期间进行目标岗位的工作审计。因为职责轮换一般都涉及放假,所以职责轮换也通常成为强制放假。职责轮换除了可以进一步防止重要岗位的欺诈之外,也可以让人员熟悉本来不属于他负责的其他工作,为业务流程的岗位安排带来人员备份和协调工作能力提升的好处。
2.4.3 纵深防御
在云计算环境中,原有的可信边界日益削弱,攻击平面也在增多,过去的单层防御已经难以维系安全性,纵深防御是经典信息安全防御体系在云计算环境中的必然发展趋势。云计算环境由于其结构的特殊性,攻击平面较多,在进行纵深防御时,需要考虑的层面也较多,从底至上主要包括:物理设施安全、网络安全、云平台安全、主机安全、应用安全和数据安全等方面,如图2-10所示。
另外,云计算环境中的纵深防御还具有多点联动防御和入侵容忍的特性。在云计算环境中,多个安全节点协同防御、互补不足,会带来更好的防御效果。入侵容忍则是指当某一攻击面遭遇攻击时,可以通过安全设计手段将攻击限制在这一攻击层面,使攻击不能持续渗透下去。
根据木桶原理,系统的安全性取决于整个系统中安全性最低的部分,这个原理在云计算环境下同样适用。针对某一方面、采取某种单一手段增强系统的安全性,无法真正解决云计算环境下的安全问题,也无法真正提高云计算环境的安全性。云计算的安全需要从整个系统的安全角度出发进行考虑。
2.4.4 防御单元解耦
将防御单元从系统中解耦,使云计算的防御模块和服务模块在运行过程中不会相互影响,各自独立工作。这一原则主要体现在网络模块划分和应用模块划分两个方面。可以将网络划分成VPC(Virtual Private Cloud)模式,保证各模块的网络之间进行有效的隔离。另一方面,将云服务商的应用和系统划分为最小的模块,这些模块之间保持独立的防御策略。另外,对某些特殊场景的应用还可以配置多层沙箱防御策略,如图2-11所示。
2.4.5 面向失效的安全设计
面向失效的安全设计原则与纵深防御有相似之处。它是指在云计算环境下的安全设计中,当某种防御手段失效后,还能通过补救手段进行有效防御;一种补救手段失效,还有后续补救手段。这种多个或多层次的防御手段可能表现在时间或空间方面,也可能表现在多样性方面。
2.4.6 回溯和审计
云计算环境因其复杂的架构导致面临的安全威胁更多,发生安全事故的可能性更大,对安全事故的预警、处理、响应和恢复的效率要求也更高。因此,建立完善的系统日志采集机制对于安全审计、安全事件追溯、系统回溯和系统运行维护等方面来说就变得尤为重要。在云计算环境下,应该建立完善的日志系统和审计系统,实现对资源分配的审计、对各角色授权的审计、对各角色登录后的操作行为的审计等,从而提高系统对安全事故的审查和恢复能力。
2.4.7 安全数据标准化
由于目前的云计算解决方案很多,且不同的解决方案对相关数据、调用接口等的定义不同,导致目前无法定义一个统一的流程来对所有的云计算服务的安全数据进行采集和分析。目前已经有相关的组织对比进行了研究,如云安全联盟CSA提出的CTP(云可信协议)协议以及动态管理工作组DMTF提出的CADF(云审计数据互联)模型。