从前,安全防护只是特定团队的责任,在开发的最后阶段才会介入。当开发周期长达数月、甚至数年时,这样做没什么问题;但是现在,这种做法现在已经行不通了。采用 DevOps 可以有效推进快速频繁的开发周期(有时全程只有数周或数天),但是过时的安全措施则可能会拖累整个流程,即使最高效的 DevOps 计划也可能会放慢速度。

一、DevSecOps是什么

在 DevOps 协作框架下,安全防护是整个 IT 团队的共同责任,需要贯穿至整个生命周期的每一个环节。这个理念非常重要,因此催生出了“DevSecOps”一词,即在开发和运维紧密结合的基础上再强调了Security,强调必须为 DevOps 计划打下扎实的安全基础。

DevSecOps 意味着从一开始就要考虑应用和基础架构的安全性;同时还要让某些安全网关实现自动化,以防止 DevOps 工作流程变慢。选择合适的工具来持续集成安全防护(比如在集成开发环境(IDE)中集成安全防护功能)有助于实现这些目标。但是高效的 DevOps 安防需要的不仅是新工具。它更需要整个公司实现 DevOps 文化变革,从而尽早集成安全团队的工作。

二、DevSecOps目标及原因

DevSecOps的目的和意图是建立在“每个人都对安全负责”的思想基础上,目标是在不牺牲所需安全性的前提下,将安全决策快速、大规模地分发给拥有最高级别上下流的人员。

如今,也是同样的原因致使传统的安全领导者竭力争取自己在行政会议上的一席之地。虽然这一席之地能够保证安全决策有效性的提高,但由于价值创造过程中缺乏所需安全技能的供应,导致成果在产出过程中摩擦增多、速度减缓。如果没有足够的人手,企业经营者就无法达到业务运营商所期望的速度,也就意味着他们必须改变安全价值的贡献方式,否则风险就会增加。

随着DevOps、敏捷和公共云服务的业务需要,传统的安全流程已成为需要削减的主要目标。但可悲的是,这又是最容易忽略的一点。传统安全性的出发点是,一旦设计了系统,便可以由安全人员确定系统的安全缺陷,并由业务运营商在发布系统之前对其进行纠正。这一原则允许流程将有限的安全技能应用于结果,并且不必在大型系统中额外增加安全环境。但是,这样设计的流程只有在业务活动的速度是瀑布式的并且得到各方同意的情况下才有效。更糟的是,在迭代中引入认为安全必须以这种方式运行的想法是有缺陷的,也会在系统内增加固有风险。因为业务决策需要内联平衡并以较快的速度解决。因此,这一方式尚未得到实现。

三、DevSecOps优势及实施

在价值创造生命周期的最后阶段,安全团队几乎不可能拥有呈现安全决策所需的所有信息。而且,随着价值创造过程加快提供迭代价值,以便紧密地联系客户的需求,更可能的是,一次性完成整个系统的测试实际上对结果具有破坏性。实际上,以这种方式做出的大多数安全决策很少有效,经常被业务领导人否决,并且通常会在事件或破坏发生时受到质疑。

​因此,随着DevOps的不断变化,传统的安全性不再是一种选择。在通过迭代构建的系统的设计和发布中,协作已经太晚了。但是,随着DevSecOps的引入,业务运营商或安全人员都没有必要放弃降低风险的措施;相反,组织内的每个人都应该拥抱并改进它,使其得到那些有能力为系统贡献安全价值的人的支持。有个很棒的说法是,如果没有刻意的内置安全控制,系统故障是肯定的,因为仅仅是避免安全就会给系统带来更多风险。因此,认为价值创造与安全性不能合作的观点是非常荒谬的。

DevSecOps建立的思维模式包括为业务运营商提供了工具和决策,帮助他们进行安全决策,以及为安全人员提供使用、调整这些工具的支持,这非常适合协作型团队。在这种情况下,安全工程师与DevSecOps宣言保持一致,该宣言表明了安全从业者必须提供的价值,以及他们必须做出的更改,以使安全价值能够提供给更大的生态系统。通过这种方式,DevSecOps工程师为系统提供的价值是在非合作的攻击者发现缺陷之前持续监视、攻击并确定缺陷。这需要业务生态系统中的所有人,包括安全人员,为迭代的价值创造做出贡献,并不需要为了团队中安全从业者的缺失而过度焦虑。

DevSecOps作为一种思维方式和安全性转换,有助于流程与其他安全更改合作。换句话说,如果您认为需要将安全性添加到“开发”或“运营”或某些其他业务流程中,那就没关系了!需要将安全性添加到所有业务流程中,并且需要创建一个专门的团队来建立对业务的理解、发现缺陷的工具、持续的测试,以及预测作为业务操作人员如何做出决策的科学。此外,为了实现全面的转型,DevSecOps需要执行管理层和董事会参与提供相关信息,这些信息是业务如何在当今经济所代表的竞争日益激烈的低信任度环境中运营和保护团队的关键指标。

给DevOps加点料:融入安全性的DevSecOps的更多相关文章

  1. 如何一步一步用DDD设计一个电商网站(六)—— 给购物车加点料,集成售价上下文

    阅读目录 前言 如何在一个项目中实现多个上下文的业务 售价上下文与购买上下文的集成 结语 一.前言 前几篇已经实现了一个最简单的购买过程,这次开始往这个过程中增加一些东西.比如促销.会员价等,在我们的 ...

  2. 使用Dynamics 365 CE Web API查询数据加点料及选项集字段常用查询

    微软动态CRM专家罗勇 ,回复336或者20190516可方便获取本文,同时可以在第一间得到我发布的最新博文信息,follow me. 紧接上文:配置Postman通过OAuth 2 implicit ...

  3. 使用IronPython给.Net程序加点料

    开发的时候,经常被策划频繁变动的方案而苦恼.这时候就想要加入点动态语言来辅助一下. 在考虑用动态语言之前也曾想过使用动态加载dll的方式,实现基础接口来调用.在卸载的时候遇到了问题,虽可以通过应用程序 ...

  4. 给你的移动网站加点料:推荐下载App,如果本地安装则直接打开本地App(Android/IOS)

    纵观现在每家移动网站,打开首页的时候,都有各种各样的形式来提示你下载自身的移动App(Android/IOS),这是做移动客户端产品的一个很好地引流的手段.当然各家引流下载的交互和视觉各不相同,有的是 ...

  5. Python装饰器-给你的咖啡加点料

    今天你的咖啡加糖了吗? 让我们通过一个简单的例子来引出装饰器的概念及用法.在引出装饰器之前,我们先来了解一下函数的概念. 一.函数回顾 1.在python中函数是一等公民,函数也是对象.我们可以把函数 ...

  6. 【云原生 · DevOps】DevOps 解决方案

    DevOps 解决方案 1.1 容器化 CI/CD 1.2 容器化流水线 1.3 深度集成 Jenkins 1.4 灰度发布 1.5 制品库设计 1.6 DevOps 安全 1.6.1 CI/CD 安 ...

  7. [持续交付实践] 研发协作平台:DevOps背景下的组织结构

    前言 今年以来做的事情越来越杂,负责的技术方向越来越广,精力越来越分散(创业公司的典型特点),编码的时间越来越少,有时候也会觉得很疲惫没办法专注一个事情. 除了技术方向上的实践,组织上如何组建一个最优 ...

  8. JavaScript寻踪OOP之路

    上一集中,重点介绍了谁动了你的代码.这里先总结一下:咱们的代码从敲下来到运行出结果,经历了两个阶段:分析期与运行期.在分析期,JavaScript分析器悄悄动了我们的代码:在运行期,JavaScrip ...

  9. 【Vegas原创】SQLServer2008防小人利器:审核/审计功能

    小人见怪不怪,世界上最可怕的就是会技术的小人,防不胜防! sa密码泄露也就算了,关键是人家也可以前台攻击,直接把你弄的没辙! 在诅咒这种小人的同时,除了加强服务器安全管理,密码策略等,SQL Serv ...

  10. Java开发者职业生涯要看的200+本书

    作者:老刘链接:https://www.zhihu.com/question/29581524/answer/684872838来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明 ...

随机推荐

  1. Go语言基础07 _interface _1

    Go语言基础07 _interface _1 与其他主要编程语⾔的差异 接⼝为⾮⼊侵性,实现不依赖于借⼝定义 所以接⼝的定义可以包含在接⼝使⽤者包内 package interface_test im ...

  2. chrony服务器

    1.安装 yum install chrony -y 2.配置文件 主配置文件:/etc/chrony.conf server ntp.aliyun.com iburst         ---指定阿 ...

  3. 历史性突破:独立开发 .net core 在线客服系统累计处理聊天消息 48 万余条!

    业余时间用 .net core 写了一个在线客服系统.我把这款业余时间写的小系统丢在网上,陆续有人找我要私有化版本,我都给了,毕竟软件业的初衷就是免费和分享. 后来我索性就发了一个100%私有化版直接 ...

  4. mysql隐蔽的索引规则导致数据全表扫描

    索引是为了加速数据的检索,但是不合理的表结构或适应不当则会起到反作用.我们在项目中就遇到过类似的问题,两个十万级别的数据表,在做连接查询的时候,查询时间达到了7000多秒还没有查出结果. 首先说明,关 ...

  5. 遗传算法+强化学习—TPG—Emergent Tangled Graph Representations for Atari Game Playing Agents_2

    最近在看进化算法在强化学习(RL)领域的一些应用,有些论文中将使用进化算法解决强化学习问题的算法归为非强化学习算法,然而又有些论文把使用进化算法解决强化学习问题的算法归为强化学习算法,不过更多的论文是 ...

  6. IPC-7711/7721D-中文版 CN 2024 电子组件的返工、修改和维修标准

    IPC-7711D-7721D-中文版 CN 2024 电子组件的返工.修改和维修标准 链接:https://pan.baidu.com/s/1r5dm9vsj4-Oj2Jw0HgeTHw?pwd=1 ...

  7. php xattr操作文件扩展属性后续

    由于之前看了xattr的写入效率,这里简单的实现一下生产者消费者模型的高速写入. 生产者(让他创建40万条数据) <?php // 生产者 不断的生产大量数据 但是总会有停止的时候(本业务功能结 ...

  8. Ocelot集成Consul实现api网关与服务发现

    前言 没看dotnet微服务之API网关Ocelot的请先看,这篇文章接上面文章 安装consul #自定义网络,自定义网络可以指定容器IP,这样服务器重启consul集群也可以正常运行. docke ...

  9. 缓存之ehcache 之使用

    1. EHCache 的特点,是一个纯Java ,过程中(也可以理解成插入式)缓存实现,单独安装Ehcache ,需把ehcache-X.X.jar 和相关类库方到classpath中.如项目已安装了 ...

  10. OceanBase 的探索与实践

    作者:来自 vivo 互联网数据库团队- Xu Shaohui 本文总结了目前我们遇到的痛点问题并通过 OceanBase 的技术方案解决了这些痛点问题,完整的描述了 OceanBase 的实施落地, ...