2023-12-06-CSA_GCR-DevSecOps的六大支柱-自动化_29页_1mb
报告摘要
开放技术
主要作者:
Sam Sehgal Michael Roza Theodore Niedzialkowski
贡献者:
Ankur Gargi Charanjeet Singh Kamran Sadique Manuel Ifland
Raj Handa John Martin Altaz Valani
特别感谢:
本组织感谢上述专家。如果不当之处敬请指正。
联系邮箱:research@c-csa.cn
Cloud Security Alliance public workshops
CSA 大中华区秘书处
引言
DevSecOps 是以安全为核心的 DevOps 实践,六大核心支柱分别为集体责任、授权和流程整合、实用实施、建立合规与发展的桥梁、自动化、度量。自动化是其中最关键的一环,能够将安全活动无缝融入交付流水线,提升整体效率。本文重点阐述自动化支柱以下特征:
1、安全测试必须自动化以形成闭环;
2、通过自动化减轻整个软件开发生命周期的安全负担;
3、自动化活动同样需要与人工操作整合,例如代码审查。
自动化核心价值
自动化可减少人工操作,提高交付效率,同时快速响应安全事件。在 DevOps 文名著《持续交付》中强调应将大部分工作自动化。自动化改变了安全在软件生命周期的角色,从事后检查转变为实时监控与防御。
流水线设置
CSA DevSecOps 自动化流水线包含六个阶段:安全设计、安全编码、安全文档、安全测试、安全部署和持续监控。
每个阶段的检查点由工具自动触发,而非人工干预。对于无法自动化的测试,称为“异步测试”,需单独记录和跟踪。
风险差异化
根据应用风险、变更风险以及历史记录,流水线可分为三类:
- 绿色:高效率、短流程,适用于低风险应用;
- 黄色:包含部分深度测试,适用于中等风险;
- 红色:高强度测试,适用于高风险应用。
具体实施
-
异步测试控制
某些深度测试需人工参与,称为异步测试,它们不直接影响流水线进度,但必须定期执行。 -
流水线信任度建立
自动化不应完全替代人工,组织应根据风险审视自动化结果,确保只在安全达标时允许发布。
总结
DevSecOps 自动化支柱通过优化安全测试流程、实现风险优先处理,帮助企业实现自动化与效率兼顾的高质量交付。其关键在于持续反馈、合理配置以及自动化与人工的有机结合。
试读结束,高清完整版pdf/doc/ppt,请点下载