乐趣区

关于devsecops:安全至上落地DevSecOps最佳实践你不得不知道的工具

Hi!咱们是 DevSecOps 研发平安经营一体化解决方案提供商、Atlassian 寰球白金合作伙伴——龙智。在过来的十多年间,传统软件研发模式发生巨变,从瀑布式开发到麻利再到 DevOps,开发和运维之间已经明确的界线正在缓缓变得含糊。

DevOps 因为可能促成开发、运维、测试等不同部门的沟通、合作与整合,正在悄悄成为软件研发经营支流趋势。倒退至今,DevOps 也联合了新的流程,比方继续集成和继续部署来疾速交付价值。

如果您对 DevOps 还知之甚少,或是想要更深刻地理解 DevOps 工具链,请不要错过本系列文章。龙智将从 DevOps 的概念、DevOps 工具链、CI 及工具比照、DevOps 监控、DevSecOps 五个方面动手,让您从起源开始,逐渐深刻理解 DevOps 这个已风行数十年的方法论。

只管软件公司尽了最大致力,但安全漏洞仍然存在,并层出不穷。自 2000 年以来,大概有 35 亿人的集体数据被盗。产生这些问题的一部分起因在于,随着软件应用程序代码库规模和复杂性的增长,安全漏洞和破绽利用的区域也在增长。

此外,随着越来越多的企业采纳 DevOps 办法,自动化和集成软件开发和 IT 团队之间的流程,这让传统的平安工具不再实用。当初,开发人员须要将安全措施嵌入到开发工作流程的每个阶段中,并通过平安左移在 SDLC 晚期预防平安危险。当波及到 DevOps 工作流的安全性时,这种做法称为 DevSecOps。

什么是 DevSecOps?

DevSecOps 是将安全性集成到继续集成、继续交付和继续部署 Pipeline 中的实际。通过将 DevOps 价值融入软件平安,平安验证成为开发过程中一个踊跃的、集成的局部。

与 DevOps 十分类似,DevSecOps 是一种将项目管理工作流与自动化 IT 工具相结合的组织和技术办法。DevSecOps 将被动地平安审计和平安测试集成到麻利开发和 DevOps 工作流程中,从而使安全性内置于产品中,而不是利用到成品中。

要施行 DevSecOps,团队应该:

  • 在整个软件开发生命周期中引入安全性,以最大限度地缩小软件代码中的破绽。
  • 确保整个 DevOps 团队,包含开发人员和经营团队,独特承当遵循平安最佳实际的责任。
  • 通过将安全控制、工具和流程集成到 DevOps 工作流程中,在软件交付的每个阶段启用主动安全检查。通过“平安左移”将平安程序(代码审查、剖析、测试等等)挪动到软件开发生命周期(SDLC)晚期阶段,从而避免缺点产生和尽早找出破绽。

通过 DevSecOps,平安应该被利用到典型的 DevOps Pipeline 的每个阶段:打算、编码、构建、测试、公布和部署。

DevOps 必须向左挪动以确保安全

在传统的 DevOps 流程中,平安评估在开发流程完结时进行。这种平安至上的办法会减慢开发生命周期,导致开发人员和平安团队产生间隙,因为他们须要重新处理简直交付的代码来修复本能够更早发现和解决的平安问题。

因而,组织曾经开始向左转移,即被动将安全性引入开发生命周期自身,而不是在最初一刻 进行平安修复。平安“左移”是 IT 开发和 DevOps 人员应用的专业术语,用于形容将平安测试和平安技术向软件开发周期上游挪动。以后,平安“左移”曾经成为软件行业的共识,因为在软件开发生命周期晚期修复破绽远比在前期进行补救更加省时省力。

“左移”的实际:将平安测试提前到编码和构建阶段

从实际方面来说,左移,意味着在早的阶段——编码和构建阶段就可开始进行平安测试,在晚期就扫描代码中的破绽是保障产品安全的根本,也是首要步骤。将破绽扫描工具集成到 CI/CD 流程中,是不言而喻的开始施行 DevSecOps 的中央。

这意味着要确保在交付 Pipeline 的每个次要阶段都查看代码是否存在破绽,为了达到这种集成程度,企业须要确保负责 Pipeline 各个阶段的各方都具备他们所需的培训和工具,以检测代码中的破绽。

相干技术包含用于检测专有代码中的破绽的 SAST 和用于检测具备已知破绽的开源组件的 SCA 工具。许多 SAST 和 SCA 供应商都提供与 CI 服务,构建工具,存储库的集成,还提供与 IDE 的集成,以帮忙开发人员尽早发现问题。

在 DevSecOps 中,最风行的 SAST 工具是 SonarQube。SonarQube 是一个主动代码扫描工具,用来继续剖析和评测我的项目源代码的品质。它反对 29 种开发语言,蕴含 java、python、C#、C++ 等,以及可从代码量、安全隐患、测试覆盖率等多个维度剖析代码。SonarQube 涵盖了编程语言的动态扫描规定:代码编写标准 + 平安标准,可能与代码编辑器、CI/CD 平台完满集成。

另一个常见工具是兼顾 SCA 和 SAST 的 Mend(原 WhiteSource)。Mend 是一个侧重于 SCA,治理开源组件的一站式平安、许可和品质的解决方案。它能够精确检测所有开源许可,包含库的许可,自动化强制施行在新加组件上的许可政策。用户因而能够阻挡不冀望的组件进入本人的软件。

通过应用 Mend,使企业可能通过主动修复形式,爱护其专有和开源代码的平安,从而使开发人员可能集中精力创始新型应用程序。Mend 部署在云上,为 SCA 和 SAST 提供主动修复性能,并间接出现在开发人员的存储库中。

与左移中其余工具集成

在 Atlassian 的 DevOps 解决⽅案中,同样采取了左移,将过来在测试阶段才进行的局部测试左移到了构建阶段。之前 SonarQube 是放在 Bamboo 中的,相当于在 CI/CD 阶段才应用 SAST 工具。当初左移后,通过 SonarQube for Bitbucket 插件,让 SonarQube 与 Bitbucket 严密集成,代码扫描就被左移到了编码阶段。

应用 SonarQube for Bitbucket 插件集成这两个软件后,您能够间接在 Bitbucket 中调用 SonarQube 扫描代码语法错误等,并在两个软件中均能查看扫描后果。

Mend 与 Bitbucket 的集成同样是通过插件,方便快捷。应用 WhiteSource for Bitbucket,让 SCA/SAST 工具在编码阶段即可扫描开源组件中的已知破绽,保障提交的代码洁净。

如果您想要把 Mend 集成到 CI/CD Pipeline 中,Atlassian 的 Marketplace 中并不提供相干插件。您能够分割 Atlassian 寰球白金合作伙伴——龙智,咱们为您提供定制开发服务,通过脚本搭建 Mend 与 Bamboo 的集成,让您可能轻松把 Mend 集成到 CI/CD Pipeline 中。

平安贯通于整个 DevOps 流程:利用于所有阶段、保障平安的工具

除了编码和构建,平安理念和实际还须要落实到更多的 DevOps 阶段。因为只有将平安融入到软件开发的整个生命周期中,并实现平安左移,能力落地 DevSecOps 的最佳实际。Perforce 公司的版本管理软件——Helix Core 能够实现贯通始终的平安。从打算到部署,每一个环节都是它的用武之地。

Helix Core 在一个存储库中平安治理所有数字内容,提供繁多可信起源,对立、灵便、颗粒度访问控制,具备全面可跟踪性。凭借对多因素身份验证和其余弱小平安性能的反对,Helix Core 是为您最贵重资产——知识产权,提供坚硬爱护的最平安的版本控制系统。

除了 Helix Core 以外,还有许多版本控制软件可供选择,例如 Bitbucket、SVN 等。如果您的企业同时应用多个版本控制软件,那么通过 Atlassian 公司的源代码库深度查看软件 Fisheye 来治理这些版本管理软件是个很好的抉择。Fisheye 与 Jira 深度集成,让您可能间接通过 Jira 来治理这些版本管理软件。

龙智集成世界支流工具,为您量身定制 DevSecOps 解决方案

随着越来越多的开发团队倒退他们的流程并采纳新工具,他们须要认真对待平安。DevSecOps 是一个循环过程,应该一直迭代并利用于每个新的代码部署。破绽和攻击者都在一直倒退,古代的软件团队也必须随之倒退。

龙智连续开放式 DevOps 的理念,帮忙您集成 Atlassian 工具和各种平安工具,为企业量身定制 DevSecOps 解决方案。

同时,龙智作为 Atlassian 寰球白金合作伙伴,为帮忙开释及拓展 Atlassian 工具的力量,也自主开发了多款 Atlassian 插件,更适宜外乡企业应用。包含帮忙用户爱护文档版权、跟踪文档内容起源以及进步可信度的 Confluence 水印插件(Watermark for Confuence);施行记录、限度用户在 Confluence 中复制页面内容、下载附件等行为的 Confluence 附件与页面平安治理插件,以及 Jira 工时治理插件(TimeWise for Jira)、Jira 工作流扩大和并行审批插件(WorkflowWise for Jira)等,欢送征询试用。

想理解更多 Atlassian DevOps 解决方案、工具及客户案例?欢迎您立刻征询 Atlassian 寰球白金合作伙伴—龙智:
电话:400-775-5506
邮箱:marketing@shdsd.com

退出移动版