基于容器的DevSecOps如何实现?
收起DevSecOps是一个系统工程,涉及组织文化、管理流程、工具链。相对于DevOps,在流程中增加了内嵌的安全检查,从而实现安全左移,降低安全成本。
DevOps与容器的关系较为紧密,相对于非容器化场景,容器技术可以将部署和维护的效率提升。因此很多企业的DevOps平台工程建设也会与容器化技术进行结合,但并非说DevOps必须采用容器化。相应地,在DevSecOps建设中,基于容器与基于非容器的区别也不大,只是制品的形态不同,是容器镜像还是Jar包/War包?
下图中列举了一些典型的安全检查点,供参考。
如果是容器场景,可以在构建完成后发布前需要进行镜像扫描,进行镜像完整性签名。在运行前进行签名验证,运行时采用容器安全软件进行入侵检测。
如果是非容器场景,则在发布前对制品进行扫描,对制品进行签名,运行前进行签名验证,运行时采用主机防护软件进行入侵检测。
也就是说除了载体形态有区别,其他方面从整体流程来说差异很小。