--- title: "What is DevSecOps? Best Practices, Benefits, and Tools" type: source tags: [DevSecOps, 安全, SDLC, CI/CD] date: 2023-10-30 --- ## Source File - [[raw/Cloud & DevOps/What is DevSecOps Best Practices, Benefits, and Tools.md]] ## Summary - 核心主题:DevSecOps(开发安全运维)方法论 - 问题域:软件安全开发流程、CI/CD 安全集成、企业安全转型 - 方法/机制: - 在 SDLC 各阶段集成安全检查 - 自动化安全测试(SAST、SCA、IAST、DAST) - Shift Left/Shift Right 安全策略 - 安全即代码(Policy-as-Code) - 结论/价值:70% 的发布后漏洞可通过 DevSecOps 预防 ## Key Claims - DevSecOps 将安全职责从单独的安全团队转移到整个开发团队 - 自动化安全测试可集成到 CI/CD 流水线而不影响开发速度 - "Shift Left" 在开发早期识别安全缺陷,降低修复成本 - "Shift Right" 确保发布后持续监控和修复漏洞 ## Key Quotes > "70% of software vulnerabilities discovered post-launch could have been prevented with DevSecOps" > "DevSecOps encourages collaboration among software developers, security teams, and operations staff" ## Key Concepts - [[DevSecOps]]:在 CI/CD 流水线中深度集成安全工具的文化理念 - [[CI/CD 流水线]]:自动化测试、集成和部署的持续交付管道 - [[SDLC]]:软件开发生命周期 - [[SAST]]:静态应用安全测试,在编码早期发现漏洞 - [[SCA]]:软件成分分析,检测第三方组件漏洞 - [[IAST]]:交互式应用安全测试,运行时检测漏洞 - [[DAST]]:动态应用安全测试,模拟外部攻击 - [[Shift Left]]:在开发早期阶段融入安全测试 - [[Shift Right]]:发布后持续安全监控和测试 ## Key Entities - [[AWS]]:提供 Inspector、CodeGuru Reviewer 等安全工具 - [[Jenkins]]:CI/CD 工具,可集成安全扫描 - [[Docker]]:容器化平台,需确保容器安全 - [[Kubernetes]]:容器编排,需安全配置 - [[Snyk]]:开源安全扫描工具 - [[SonarQube]]:代码质量与安全分析工具 - [[OWASP]]:Web 安全关键标准,OWASP Top Ten 是安全测试基准 ## Connections - [[DevOps]] ← extends ← [[DevSecOps]] - [[敏捷实践]] ← integrates ← [[DevSecOps]] - [[CI-CD-流水线]] ← embeds ← [[DevSecOps]] - [[DevOps-文化]] ← evolves_into ← [[DevSecOps]] - [[Infrastructure-as-Code-IaC]] ← integrates_with ← [[DevSecOps]] - [[Policy-as-Code]] ← implements ← [[DevSecOps]] ## Contradictions - 与传统安全模式冲突: - 冲突点:传统模式在开发完成后进行安全测试 - 当前观点:安全应嵌入每个开发阶段 - 对方观点:安全是专职安全团队的责任