写点什么

敏捷与安全不可兼得吗?看完这篇文章后,我想说:未必!

发布于: 2021 年 01 月 04 日

摘要:敏捷与安全似乎矛盾,但如何共存?本文将为你解读从“应用敏捷”到“应用敏捷+安全”的实现路径。

起初,企业以传统的瀑布式研发模式把软件开发过程划分为需求、分析、设计、开发、测试等不同的流程。这些流程有着严格的先后次序之分,只有当前面的流程结束之后,下一个流程才能开始运转。这种开发方式好似瀑布的下落,由此命名为瀑布模型。

但随着业务的发展,研发模式也在发生了不断的演进,传统基于阶段的瀑布研发过程,导致当开发对于迅速变化的业务响应严重滞后,为此业界倡导通过敏捷的方式,快速迭代,小步快跑,持续集成,主动拥抱变化。

敏捷开发以用户的需求进化为核心,采用迭代、循序渐进的方法进行软件开发。把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。

如今,随着移动互联网的迅速发展,应用从需求到上线的 TTM(Time to market)越来越短,普遍存在的开发和运维的“混乱之墙”成为了断裂点,为此业界开始提倡 DevOps 的协作模式,敏捷精益的理念进一步延伸到运维侧。同时,随着云原生基础设施的建立和 CICD 技术的发展,DevOps 已广泛得应用到各个企业。

从“应用敏捷”到“应用敏捷+安全”

但是随着数字化席卷各行各业,应用进入了我们生活的方方面面:人与人的互联、物与物的互联、人与物的互联正在成为现实,应用对于人和社会的安全威胁也逐日提升。由于应用的安全防护和安全意识还普遍滞后,为此以 Built-In Security 和自动化为基本理念的 DevSecOps 开始得到重视。DevSecOps 的理念在将安全融入敏捷过程中,即通过设计一系列可集成的控制措施,增大监测、跟踪和分析的力度,优化安全实践,集成到开发和运营的各项工作中,并将安全能力赋给各个团队,同时保持“敏捷”和 “协作”的初衷。在这一理念中,企业的整个 IT 团队目标统一,即在保障敏捷开发的基础上,共同背负起安全的责任。



DevSecOps 引入自动化安全

DevSecOps 实际上是 DevOps 的延续和演进。云原生技术加持下的 DevOps 使得应用开发和上线周期越来越短,传统的安全团队上线前介入的模式已经严重滞后,不仅不能有效的进行系统的安全防护,而且也会影响应用的交付速度。DevSecOps 的最关键理念就是强调在应用的全生命周期都内嵌安全,同时提出安全的检测和防护做到尽可能的自动化,将自动化融入安全,实现了质量、安全和速度的最佳平衡。安全应尽可能做到全场景,从基础设施、代码、镜像、到架构,同时需要做到覆盖应用的全生命周期,从开发态、运行态直至运维态。



DevSecOps 需要安全工具自动化以及平台化

在传统的研发过程中,研发与安全割裂,主要是因为安全影响研发效率,但自动化的安全工具可以适用当前的敏捷开发需求。基于安全与 DevSecOps 的强烈诉求,华为云正在逐步的将华为 20 年来深耕安全的能力通过云服务的形式外溢,让更多的企业能共享华为对于安全的先进理念和技术实践,华为云通过让在 DevOps 的每个环节都通过规范、方法论和自动化的安全服务,来实现 DevSecOps 的理念,如在创建应用阶段安全框架和编码规范,嵌入 IDE 插件的代码检查等。下面我们详细逐一来看华为云所实现的安全工具自动化以及平台化。

平台化:全流程云原生 DevSecOps 平台

华为云提供云原生 DevOps 平台:华为云 DevCloud 软件开发平台。华为云 DevCloud 在业界具有较高的影响力,得到了专业咨询机构和客户的官方认可,在全流程、支持的技术栈与安全可信角度有较强的竞争力,华为云 DevCloud 为客户提供了从需求/规划到运维的多个服务。



自动化工具与安全无缝连接

代码托管服务是 DevCloud 为客户提供的稳定、安全的代码管理服务,该服务同时也支持了华为内部 1100 亿行的代码管理,多个安全可信的措施,多仓协同和高并发。代码分析和代码检查服务,也是华为自主研发的代码静态检查服务,沉淀了华为多年的高质量代码检查规则集,支持的语言多,标准多,同时提供了自动化辅助缺陷修复的特性。

代码构建服务,为客户提供了配置及代码的构建服务,支持丰富的构建语言和框架,同时通过多种技术实现 10 倍+的构建加速,并提供封闭的构建环境,保证构建阶段的可信安全。云测服务,为客户大规模,高并发,全流程的智能测试服务,提供测试管理,性能测试,API 测试,移动测试等多种专业测试服务,并通过测试设计的智能化,测试执行的智能化和测试分析的智能化,提升测试的效率和拦截问题的比例

同时,华为云在 DevOps 的基础上,陆续增加安全设计,安全合规,安全检查,和安全防护的专业服务,通过服务化的接口和华为云 DevCloud 进行深度集成。同时,在已有的运行、运维安全的基础上,进一步全方面的加强网络安全、数据安全、应用安全与数据库安全,让云原生的应用生得安全,活得安全。

而对于企业如何更好的实施 DevSecOps,我们有以下几个实践:

  1. 安全可信应该是每个人的责任,而不仅仅只是安全团队关心的事情。

  2. 重视架构解耦,架构解耦,低依赖,安全风险和影响范围更可控。

  3. 重视自动化和知识协同,不断提升效率,通过知识分享,组织和个人持续改进。

  4. 努力打造全功能团队,团队自治,破除部门墙,对商业和用户负责。

安全可信+高效敏捷

从概念提出到现在,云原生所带来的敏捷、开放、标准化、轻量、松耦合与灵活的优势是企业数字化转型升级的基础必选项。面对日益严峻的安全威胁和安全影响,云原生加持下的 DevSecOps 理念和实践,将安全自动化内嵌到应用的全生命周期,在保证安全可信的同时,也依然能够发挥云原生所带来的高效与敏捷。

 

点击关注,第一时间了解华为云新鲜技术~


发布于: 2021 年 01 月 04 日阅读数: 89
用户头像

提供全面深入的云计算技术干货 2020.07.14 加入

华为云开发者社区,提供全面深入的云计算前景分析、丰富的技术干货、程序样例,分享华为云前沿资讯动态,方便开发者快速成长与发展,欢迎提问、互动,多方位了解云计算! 传送门:https://bbs.huaweicloud.com/

评论

发布
暂无评论
敏捷与安全不可兼得吗?看完这篇文章后,我想说:未必!