/catalog/296695a3fdd74f71b4ced1996c9b6856//Document/304898482892869.html/Document/304549706600517.html/Document/304188584996933.html/Document/303818784497733.html/Document/302700517105733.html/Document/302416475320389.html/Document/302077848256581.html/Document/301288627347525.html/Document/300279638184005.html/Document/274792263872581.html/Document/273024381308997.html/Document/272683642789957.html/Document/272351623921733.html/Document/271961406242885.html/Document/271560844214341.html/Document/270477420015685.html/Document/269881559916613.html/catalog/c51244b85e704db9a2a34ca396e9fe27//Document/297463116619845.html/Document/296410729726021.html/Document/294281412902981.html/Document/289614801383493.html/Document/289336711553093.html/Document/288989717336133.html/Document/267736666357829.html

如何在整个开发生命周期的工具链中嵌入安全测试

前面我们讲到过DevSecOps在技术方面的一个关键点是集成,就会涉及到我们开发生命周期的工具链,我们上图中列出的还不是全部,大家都知道涉及到的工具链太多了。仅仅是开发工具,主流的就有好几种,最主流的像eclipse、Visual Studio、IntelliJ IDEA。

DevSecOps

开发完成后,就到了代码管理环节,常见的像GitLab、GitHub、Bitbucket,还有构建用的Maven、Gradle等等。再就是CI/CD持续发布、持续集成,最常见的是Jenkins,很多平台都是基于Jenkins开发的。


测试完成之后,要跟踪缺陷,还会用到Jira、Bugzilla这些工具。还有一些针对开源组件的测试平台,以上这些都是我们会用到的工具链。


我们在开发的过程中,通过工具的应用、一些在线的培训都能够帮助我们开发人员丰富安全编码的知识、具备安全编码的能力。在这些工具链中,都可以将安全测试嵌入进去。


以IDE为例,IDE本来是个开发者平台,我们可不可以边开发边做安全测试呢?是可以的,在开发的同时就可以保证代码的安全性。我认为,安全左移,其实就是移到了开发人员的IDE上,这也是左移最重要的一个体现了。


那我们在CI/CD的时候,是不是可以同步把代码也测了呢?我们在构建build的时候可以同时把代码做一个安全测试吗?都是可以的,都可以集成进去。同时,安全问题也是bug,也可以通过Bugzilla这些工具去管理,而不仅仅是管理功能缺陷。

 

接下来的文章我们会继续带大家了解DevSecOps最佳实践如何落地,各个环节如何部署,以及行业最佳实践的案例,欢迎大家继续关注。