1. 云栖社区>
  2. 技术文集>
  3. 列表>
  4. 正文

如何利用网络应用经验开发云应用?

作者:用户 来源:互联网 时间:2016-07-04 10:50:26

开发安全应用时速云应用程序企业环境应用开发云组件

如何利用网络应用经验开发云应用? - 摘要: 本文讲的是如何利用网络应用经验开发云应用?,    随着越来越的企业寻找着可部署在云厂商环境中的应用程序,业界对于健全的安全措施与技术的需求也变得至关重要起来。   随着越来越的企业寻找着可部署在云厂商环境中的应用程序,业界对于健全的安全

   随着越来越的企业寻找着可部署在云厂商环境中的应用程序,业界对于健全的安全措施与技术的需求也变得至关重要起来。

  随着越来越的企业寻找着可部署在云厂商环境中的应用程序,业界对于健全的安全措施与技术的需求也变得至关重要起来。那么,应当如何开发计算环境中的应用程序以便于实现安全性的最大化呢?这些云应用是否有别于传统的内部应用程序呢?在开发周期和质保(QA)过程中,需要有什么样的变化呢?在把应用程序迁往公有云环境前,就必须解决所有上述这些问题。

  在本文中,我们会提供指导,介绍如何特别地为更易于受到当今最常见攻击的云开发安全的应用。我们还将讨论一些需要落实到位的控制措施以便于在应用开发和部署之后还能确保这些云应用的安全性。

  如何安全地开发云应用

  在企业一头扎进云应用开发过程之前,企业的安全团队就应当鼓励他们的开发人员摸索安全开发平台、编程安全产品以及由云厂商所提供的相关工具。采用代码安全措施和安全开发措施的平台即服务(PaaS)供应商的典型代表之一就是Salesforce.com的Force.com,他们在维基上有专门的一个页面介绍开发人员安全与编程最佳实践。Force.com的维基页面对设计、开发、测试以及发布各个阶段的安全问题分别进行了全面的概述,这基本上就是一个相当标准的软件开发生命周期(SDLC)了。Force.com提供了一些最佳实践的文章,一个可以帮助指导安全决策的自评估工具以及专供SDLC各个阶段使用的特定工具。同样,微软公司也提供了一些适合开发人员使用的资源,其中包括该公司的“云计算基础”系列视频。

  如何基于网络应用经验开发云应用

  虽然有了这些可用的资源,但是目前还没有任何一家云厂商能够提供所有的资源和其他的程序组件,以便于满足在公有云和混合云环境中确保安全应用程序健全开发的需求。成功的安全云应用开发要求我们能够根据云应用的风险特点采取有针对性的措施。安全开发的责任人应当把云应用视为比标准内部应用程序更具开放性的开发对象。这是为什么呢?首先,云应用通常都存在于一个独立于企业核心IT设备以外的环境中被托管和维护,因此与传统的内部应用程序相比,企业对云应用的控制权限更少。其次,大多数云应用都是基于网络的,这就意味着很可能需要面对各种各样标准尚未流行的网络应用程序的安全威胁,其中包括了跨网站的脚本程序、SQL注入以及目录遍历等。

  一个信息安全团队应当建议其开发人员认真考虑开放式网络应用程序安全项目(OWASP)提出的十大网络应用程序攻击,然后在发布应用程序并部署至云计算环境前开发和集成针对这些攻击的缓解措施。很多网络应用程序受到攻击的主要原因就在于缺乏对输入的过滤,所以开发人员应当严格定义应用程序可接受的数据类型、长度和格式。开发人员还应当小心谨慎,尽可能地避免在他们的云应用中暴露应用程序编程接口(API)。一直以来,API滥用被云计算安全联盟列为云计算的主要威胁之一。

  云应用安全性意味着认证和加密

  鉴于云应用游离于企业网络和企业监控的范围之外,要实现他们的认证和授权就必须施以更高强度的控制。开发人员应当确保认证页面或接口能够完全驾驭所有的应用程序内容和功能。账户劫持则是另一个常见的云计算安全问题,所以开发人员可能需要实施一种比内部应用程序更严格的身份认证策略,他们应尽可能地充分利用多元认证方法、强大的密码复杂性和长度策略。鉴于云应用被托管在多租户环境中,使用文件和应用程序级加密技术可能是非常适合的。虽然恶意合作租户妥协方案的可能性是难以预料的,但是使用加密技术和认真审查库及其他第三方代码组件是可以遵循的稳健做法。

  一个企业的现行SDLC也应适用于云应用的开发和发布。在正式发布至云计算平台前,应考虑强制性地仔细测试代码和执行QA流程。由于考虑到云计算资源固有的可伸缩性,应执行可用性测试、性能测试以及一定程度的压力测试。

  安全开发需要一定的时间

  一般情况下,随着企业越来越迅速地实施云计算,目前业界已出现了一个快速开发程序(如Agile)的发展趋势。除非企业能够在开发项目的每个阶段都能够投入必要的时间和资源以确保代码的安全性,否则这些希望实现他们云应用安全性的企业就应当在交付这样的应用程序时特别地审慎。显而易见,当开发安全云应用时,有大量的问题需要予以关注和解决,所以加快这一过程的后果只能是增加出现有问题应用程序的风险而已。

以上是云栖社区小编为您精心准备的的内容,在云栖社区的博客、问答、公众号、人物、课程等栏目也有 的相关内容,欢迎继续使用右上角搜索按钮进行搜索开发 , 安全 , 应用 , 时速云 , 应用程序 , 企业 , 环境 , 应用开发 云组件 利用网络资源备课经验、如何利用百度经验赚钱、利用外资 广东 经验、如何利用百度经验推广、风能利用系数经验公式,以便于您获取更多的相关知识。

azure-微软云的关键技术有哪些呢??

...并不让利给最终用户。微软按照小时队服务收费,你可以利用这个特性在一天的高峰时段增加服务器,在平峰时段减少服务器,最大化地按需配置,从而节约成本。 解决方案三: 可扩展性,弹性,存储,并发 解决方案...

阿里云易立:Docker落地应采用演化方式,而非革命手段

...一定要亲自动手去尝试,结合自己具体问题来思考和尝试如何用它来解决。这样学到的东西会更加深刻。 2.用一个开放的心态去参与到开源社区中。Docker的成功很大程度和其开源社区的繁荣密不可分,和社区的互动能够帮助自己...

微博:春节日活跃用户超一亿,探秘如何实现服务器分钟级扩容

本次由微博研发中心技术经理及高级技术专家陈飞分享了微博利用阿里云实现分钟级服务器规模成倍扩容的技术体系,包括Docker与虚机结合的使用经验、网络架构以及负载均衡、缓存架构的跨IDC服务部署的一些经验。本次视频直...

如何、为何将 IBM PureApplication 放在云中以及将它放在云中的何处

...身的虚拟机管理程序。 文章打造自己的云沙箱 介绍了如何使用 PureApplication Software 创建自己的云环境来执行概念证明和开发工作。 尽管 PureApplication System 可支持 Red Hat Linux®、Windows® 或 AIX®,具体依赖于机器基于 x86 还是 POWER...

基于AngularJS的个推前端云组件探秘

...第一类是前端使用者(包括泛前端人员),他们需要学习如何使用,快速用组件(须知道Angular的一些基本概念和用法)。第二类是UI设计师、项目和产品等,他们需要观察效果是否是适合的,根据库去设计新的此类系统。第三类...

前三篇
后三篇