发布日期:2013-04-28 16:04 来源:中国电信网络安全实验室 标签: 核心 架构 安全
 

PaaS核心架构安全(4)

(3)用户接口和应用安全

对于PaaS服务来说,它使客户能够将自己创建的某类应用程序部署到服务器端运行,并且允许客户端对应用程序及其计算环境配置进行控制。因为来自于客户端的代码可能会是恶意的,如果PaaS服务暴露过多的接口,可能会给攻击者带来机会。比如,用户可能会提交一段恶意代码,这段代码可能恶意抢占CPU时间、内存空间和其他资源,也可能会攻击其他用户,甚至可能会攻击提供运行环境的底层平台。

在用户接口方面,包括提供代码库、编程模型、编程接口、开发环境等。代码库封装平台的基本功能如存储、计算、数据库等,供用户开发应用程序时使用。编程模型决定了用户基于云平台开发的应用程序类型,它取决于平台选择的分布式计算模型。

对于PaaS服务来说,编程模型对用户必须是清晰的,用户应当很明确基于这个云平台可以解决什么类型的问题,以及如何解决这种类型的问题。PaaS提供的编程接口应该是简单的、易于掌握的,过于复杂的编程接口会降低用户将现有应用程序迁移至云平台,或基于云平台开发新型应用程序的积极性。提供开发环境SDK对运营PaaS来说不是必需的,但是,一个简单、完整的SDK有助于开发者在本机开发、测试应用程序,从而简化开发工作,缩短开发流程。GAE和Azure等著名的PaaS平台,都为开发者提供了基于各自云平台的开发环境。

在运营管理方面,PaaS运行在云数据中心,用户基于PaaS云平台开发的应用程序最终也将在云数据中心部署运营。PaaS运营管理系统需解决用户应用程序运营过程中所需的存储、计算、网络基础资源的供给和管理问题,需根据应用程序实际运行情况动态增加或减少运行实例。为保证应用程序的可靠运行,系统还需要考虑不同应用程序间的相互隔离问题,可以引入沙箱隔离技术,让它们在安全的沙盒环境中可靠运行,防止其影响到PaaS底层承载平台或系统。

另外,从技术层面上说,目前PaaS对底层资源的调度和分配机制设计方面还有所不足,PaaS应用基本是采用尽力而为的方式来使用系统的底层计算处理资源。如果同一平台上同时运行多个应用,则会在优化多个应用的资源分配、优先级配置方面无能无力。要解决这个问题,需要借助更底层的资源分配机制,如将PaaS应用承载在虚拟化平台上,借助虚拟化平台的资源调度机制来实现多个PaaS应用的资源调度、SLA等。

 

相关评论

专题信息
    随着云计算技术的应用越来越广泛,云计算的可信性和安全性问题凸显。本书叙述了采用可信云安全技术解决云计算可信和安全问题的方法。可信云安全技术是在云计算环境中,针对云端互动的人进行可信计算和安全计算的技术。