63 lines
2.7 KiB
Markdown
63 lines
2.7 KiB
Markdown
---
|
||
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
|
||
- 与传统安全模式冲突:
|
||
- 冲突点:传统模式在开发完成后进行安全测试
|
||
- 当前观点:安全应嵌入每个开发阶段
|
||
- 对方观点:安全是专职安全团队的责任 |