一文读懂 DevSecOps:工作原理、优势和实现
由于 DevOps 方法的广泛采用以及由此产生的快速产品交付和部署,许多部门已采用更敏捷的方法来开发生命周期。在满足市场速度和规模要求的同时,设计安全的软件一直是现代 IT 公司共同面临的问题。结果,超过 52% 的组织因为担心上市速度落后而放弃了安全性。 由于传统技术下的安全漏洞,生产版本也出现了延迟。因此,一些企业已经采用 DevSecOps 方法来解决这个安全方面的问题。然而,当公司从 DevOps 转向 DevSecOps 时,他们经常面临一系列标准障碍。
或许对于 DevSecOps 这个词大家并不陌生,那么对于 DevSecOps 的了解又有多少呢?阅读本文,带你全面理解 DevSecOps 是什么。
什么是 DevSecOps?
DevSecOps 是描述开发、安全和运营集成的术语。它是一种文化、自动化和平台设计策略,强调安全是整个 IT 生命周期中的共同责任。DevSecOps 从一开始就考虑到安全性来创建应用程序和基础设施的做法,同时涉及自动化安全检查,以免减慢当前的 DevOps 流程。为了满足安全目标,安全团队为持续集成安全选择和配备合适、正确的工具来满足必要的保护。
DevSecOps 的工作原理
DevSecOps 是开发组织解决安全问题的必然和自然发展。在过去,企业确保软件安全的方式往往是在开发周期结束时由安全团队为软件添加保护,然后再通过 QA 团队进行测试。这在不那么频繁地提供软件升级的时候确实是可行的。
然而随着软件工程师转向敏捷和 DevOps 以将软件开发周期缩短数周甚至数天,传统的“附加”安全方法已经无法继续有效保障软件安全性。而 DevSecOps 能够将应用程序和基础架构安全性无缝地结合到敏捷和 DevOps 流程和工具中。一旦发现安全漏洞,就会立即进行处理和修复,这样就能够以更容易、更快、更便宜的方式在软件投入生产之前缓解或消除安全风险。
此外,不同于 DevOps,DevSecOps 让应用程序和基础设施的安全性成为开发、安全和 IT 运维团队的共同责任,通过在不减慢软件开发过程的情况下自动化安全软件交付。
DecSecOps 的优势
DevOps 将业务关键应用程序在性能、速度、功能和规模方面提升到了一个全新的水平。但是由于缺乏合规性和可靠的安全性,这些应用程序有时会滞后。而将 DevSecOps 集成到软件开发生命周期中就等于把开发、安全和运营置于一个统一的框架之下。借助 DevSecOps,每个开发人员和运维人员都将在开发和部署关键业务应用程序的每个阶段优先考虑安全性。
DevSecOps 的优势在于:
- 降低合规成本
- 更快地部署应用程序
- 提高软件交付率
- 从软件开发的最开始就进行安全检查、持续监控和自动部署检查
- 从应用程序开发的早期阶段提高可视性和透明度
- 在遭受安全攻击的情况下能够更快地恢复
- 通过启用进一步安全自动化来提高整体安全性
DevSecOps 的实施
实施 DevSecOps 能够让企业保持高速、敏捷地开发和创新,同时满足合规要求且永远领先攻击者一步。从 DevOps 切换到 DevSecOps 看起来复杂且不易执行,企业可以参考以下六点:
- 代码分析 - 以小规模、高频率的版本交付代码,以便更轻松高效地检查漏洞,同时将代码分析嵌入 QA 流程中。
- 变更管理 - 允许并鼓励开发人员随时提出重要任务安全更改建议并尽可能在24小时内批准更改,让变更管理流程变得更加高效。
- 合规监控 - 在开始编写代码或进行更改时收集合规性证据,以便让开发持续处于合规状态。
- 威胁研究 - 针对使用新交付代码对企业所做出的更改而产生的威胁或漏洞进行查找、调查、研究并且进行修正。
- 漏洞管理及评估 - 在发布代码并完成漏洞检查后,定期进行扫描并进行代码审查和渗透测试。
- 安全培训 - 鼓励技术人员参加行业会议或安全认证会议,并定期为他们提供安全开发的相关培训。
图片来源:Sumologic
结 论
将业务环境切换到 DevSecOps 环境的过程是一项重大任务,充满了各种各样已知和未知的挑战。企业需要始终明白的一点是, DevSecOps 既不是万能的解决方案,也不是黄金流水线。想要将 DevSecOps 变为实践的企业必须首先制定战略,通过坚持上述建议的指导建议,相信可以在安全开发方面取得可观的结果。
一文读懂 DevSecOps:工作原理、优势和实现的更多相关文章
- 一文读懂遗传算法工作原理(附Python实现)
选自AnalyticsVidhya 参与:晏奇.黄小天 近日,Analyticsvidhya 上发表了一篇题为<Introduction to Genetic Algorithm & t ...
- 一文读懂Java GC原理和调优
概述 本文介绍GC基础原理和理论,GC调优方法思路和方法,基于Hotspot jdk1.8,学习之后将了解如何对生产系统出现的GC问题进行排查解决 阅读时长约30分钟,内容主要如下: GC基础原理,涉 ...
- 一文读懂 Kubernetes APIServer 原理
前言 整个Kubernetes技术体系由声明式API以及Controller构成,而kube-apiserver是Kubernetes的声明式api server,并为其它组件交互提供了桥梁.因此加深 ...
- 一文读懂HTTP/2及HTTP/3特性
摘要: 学习 HTTP/2 与 HTTP/3. 前言 HTTP/2 相比于 HTTP/1,可以说是大幅度提高了网页的性能,只需要升级到该协议就可以减少很多之前需要做的性能优化工作,当然兼容问题以及如何 ...
- 一文读懂高性能网络编程中的I/O模型
1.前言 随着互联网的发展,面对海量用户高并发业务,传统的阻塞式的服务端架构模式已经无能为力.本文(和下篇<高性能网络编程(六):一文读懂高性能网络编程中的线程模型>)旨在为大家提供有用的 ...
- 从HTTP/0.9到HTTP/2:一文读懂HTTP协议的历史演变和设计思路
本文原作者阮一峰,作者博客:ruanyifeng.com. 1.引言 HTTP 协议是最重要的互联网基础协议之一,它从最初的仅为浏览网页的目的进化到现在,已经是短连接通信的事实工业标准,最新版本 HT ...
- [转帖]从HTTP/0.9到HTTP/2:一文读懂HTTP协议的历史演变和设计思路
从HTTP/0.9到HTTP/2:一文读懂HTTP协议的历史演变和设计思路 http://www.52im.net/thread-1709-1-2.html 本文原作者阮一峰,作者博客:r ...
- 一文读懂AI简史:当年各国烧钱许下的愿,有些至今仍未实现
一文读懂AI简史:当年各国烧钱许下的愿,有些至今仍未实现 导读:近日,马云.马化腾.李彦宏等互联网大佬纷纷亮相2018世界人工智能大会,并登台演讲.关于人工智能的现状与未来,他们提出了各自的观点,也引 ...
- 即时通讯新手入门:一文读懂什么是Nginx?它能否实现IM的负载均衡?
本文引用了“蔷薇Nina”的“Nginx 相关介绍(Nginx是什么?能干嘛?)”一文部分内容,感谢作者的无私分享. 1.引言 Nginx(及其衍生产品)是目前被大量使用的服务端反向代理和负载均衡 ...
- 一文读懂MySQL的事务隔离级别及MVCC机制
回顾前文: 一文学会MySQL的explain工具 一文读懂MySQL的索引结构及查询优化 (同时再次强调,这几篇关于MySQL的探究都是基于5.7版本,相关总结与结论不一定适用于其他版本) 就软件开 ...
随机推荐
- 从零开始学习web前端技术路线图
最近我侄子快实习了,学校跟培训机构合作,交两万多可以参与一个培训,培训四个月,可以包就业.侄子问我,是否要去培训,培训出来可以找到工作吗? 现在很多大学生,上学的时候谈恋爱,玩游戏,快要毕业就焦虑了. ...
- C# 压缩PDF文件
PDF 文件可以包含文本.图片及各种媒体元素,但如果文件太大则会影响传输效果同时也会占用过多磁盘空间.通过压缩PDF文件,能够有效减小文件大小,从而提高传输效率并节省存储空间.想要通过C#代码快速有效 ...
- 请问您今天要来点 ODT 吗
梗出处:请问您今天要来点兔子吗? 这篇文章主要记录一下自己学习 \(\text{ODT}\) 发生的种种. CF896C Willem, Chtholly and Seniorious \(\text ...
- easyxor
怎么都写不出脚本,看了题解还是蒙蒙的,不过以后遇到这种题也可以根据提示了解他到底怎么出题的,题目明面说了xor 那就主要关注xor以后的结果和xor的对象.方法就好了,其他的就不要去管了 然后对于汇编 ...
- GCD Inside: GCD 数据结构
1 OS_object OS_object由下面宏OS_OBJECT_DEC_BASE扩展而来: // 1. os/object.h OS_OBJECT_DECL_BASE(object, NSObj ...
- Chinese Bank Card and Credit Card ID
Regular match expression: [^0-9]((3|4|5|6|9)\d{15,18})[^0-9] Rule characteristics: first number:3 or ...
- 基于Python下MySQL数据库驱动
由于MySQL服务器以独立的进程运行,并通过网络对外服务,所以,需要支持Python的MySQL驱动来连接到MySQL服务器. 1.mysql-connector-python mysql-con ...
- 神经网络入门篇:详解随机初始化(Random+Initialization)
当训练神经网络时,权重随机初始化是很重要的.对于逻辑回归,把权重初始化为0当然也是可以的.但是对于一个神经网络,如果把权重或者参数都初始化为0,那么梯度下降将不会起作用. 来看看这是为什么. 有两个输 ...
- [USACO2007NOVG] Sunscreen
题目描述 To avoid unsightly burns while tanning, each of the$ C (1 ≤ C ≤ 2500) $cows must cover her hide ...
- [USACO2007NOVS] Best Cow Line S
题目描述 Farmer John 打算带领 \(N\)(\(1 \leq N \leq 2\,000\))头奶牛参加一年一度的"全美农场主大奖赛".在这场比赛中,每个参赛者必须让他 ...