siddheshrasal98-ops/aws-devsecops-capstone

GitHub: siddheshrasal98-ops/aws-devsecops-capstone

该项目为 Spring Boot 应用构建了一条覆盖 SAST、SCA、容器扫描、IaC 扫描、DAST 及监控的端到端 AWS DevSecOps CI/CD 流水线,用于演示安全左移的完整落地实践。

Stars: 0 | Forks: 0

# 🚀 员工管理应用的 AWS DevSecOps CI/CD Pipeline ## 📌 项目概述 本项目展示了如何为 Spring Boot 员工管理应用实现完整的 **AWS DevSecOps CI/CD Pipeline**。该解决方案集成了持续集成、基础设施即代码、DevSecOps 安全实践、自动化部署,并使用行业标准的工具和 AWS 云服务进行监控。 该流水线遵循现代 DevSecOps 最佳实践,自动化了代码集成、质量分析、安全验证、基础设施配置、容器化、部署以及可观测性等环节。 # 🎯 目标 - 使用 Jenkins 自动化应用程序的构建和部署。 - 使用 Terraform 实现基础设施即代码。 - 在整个 CI/CD pipeline 中集成安全机制。 - 执行自动化漏洞扫描。 - 使用 AWS Secrets Manager 保护敏感凭证。 - 使用 Docker 部署容器化应用程序。 - 使用 Prometheus 和 Grafana 监控基础设施和应用程序性能。 # 🛠 技术栈 | 类别 | 工具 | |-----------|--------| | 版本控制 | Git, GitHub | | CI/CD | Jenkins | | 构建工具 | Maven | | 应用程序 | Spring Boot | | 静态代码分析 (SAST) | SonarQube | | 软件组成分析 (SCA) | OWASP Dependency Check | | 基础设施即代码 | Terraform | | IaC 安全 | Checkov | | 策略即代码 | Open Policy Agent (OPA) | | 容器化 | Docker | | 容器安全 | Trivy | | 密钥管理 | AWS Secrets Manager | | 动态应用程序安全测试 | OWASP ZAP | | 监控 | Spring Boot Actuator, Prometheus, Grafana | | 云平台 | AWS | # 🔄 CI/CD Pipeline 工作流 ``` Developer │ ▼ GitHub Repository │ ▼ Jenkins Pipeline │ ├── Source Code Checkout ├── Maven Build ├── SonarQube (SAST) ├── OWASP Dependency Check (SCA) ├── Checkov (IaC Scan) ├── Open Policy Agent (OPA) ├── Terraform (AWS Infrastructure) ├── Docker Build ├── Trivy Image Scan ├── AWS Secrets Manager ├── Docker Deployment ├── OWASP ZAP (DAST) ▼ Spring Boot Application │ ├── Spring Boot Actuator ▼ Prometheus ▼ Grafana ``` # 🔐 DevSecOps 安全实现 - ✅ SonarQube – 静态应用程序安全测试 (SAST) - ✅ OWASP Dependency Check – 软件组成分析 (SCA) - ✅ Checkov – 基础设施即代码安全扫描 - ✅ Open Policy Agent (OPA) – 策略即代码验证 - ✅ Trivy – Docker 镜像漏洞扫描 - ✅ AWS Secrets Manager – 安全的密钥管理 - ✅ OWASP ZAP – 动态应用程序安全测试 (DAST) # ☁ 基础设施即代码 使用 **Terraform** 自动化基础设施配置,包括: - AWS Provider 配置 - EC2 实例配置 - Security Groups - IAM 配置 - Terraform 状态管理 - Jenkins 集成 使用的 Terraform 命令: ``` terraform init terraform plan terraform apply terraform destroy ``` # 📊 监控与可观测性 使用以下工具对部署的应用程序进行持续监控: - Spring Boot Actuator - Prometheus - Grafana 仪表板 监控的指标包括: - CPU 使用率 - 内存使用率 - JVM 指标 - 应用程序健康状况 - 网络统计信息 # 📂 仓库结构 ``` aws-devsecops-capstone/ │ ├── employee-management-api/ ├── terraform/ ├── opa/ ├── screenshots/ ├── Jenkinsfile ├── Dockerfile ├── docker-compose.yml ├── README.md └── LICENSE ``` # 📸 项目截图 本仓库包含以下内容的截图: - Jenkins Pipeline 成功状态 - SonarQube 仪表板 - OWASP Dependency Check 报告 - Checkov 扫描 - Terraform 部署 - Docker 容器 - Trivy 扫描 - AWS Secrets Manager - Prometheus Targets - Grafana 仪表板 - OWASP ZAP 报告 - 架构图 # ⭐ 核心功能 - 自动化 CI/CD Pipeline - 基础设施即代码 - 左移 DevSecOps 实现 - 安全的密钥管理 - 自动化安全扫描 - 容器化部署 - 实时监控 - 策略即代码验证 - AWS 云部署 # 🚀 未来增强计划 - Kubernetes 部署 - Amazon EKS - Helm Charts - Argo CD (GitOps) - Slack/MS Teams 通知 - 蓝绿部署 - 金丝雀部署 - 自动化回滚策略 # 👨‍💻 作者 **Siddhesh Rasal** GitHub: https://github.com/siddheshrasal98-ops # 📜 许可证 本项目作为 **Edureka DevOps 研究生项目 (PGDM)** 的一部分开发,仅供教育和作品展示用途。
标签:域名枚举, 漏洞利用检测, 自定义请求头, 请求拦截