hautph/awesome-devsecops-v2

GitHub: hautph/awesome-devsecops-v2

一个集成工具目录、学习资源和最佳实践指南的 DevSecOps 交互式知识平台。

Stars: 0 | Forks: 0

# Awesome DevSecOps v0.2.0 一个全面的 DevSecOps 资源中心,提供安全工具、学习路径、代码示例以及将安全性集成到 DevOps 流水线中的最佳实践。本项目作为一个精选资源集合,旨在帮助开发人员、安全专业人员和 DevOps 工程师在整个软件开发生命周期中实施安全措施。 ## 🎯 目标与宗旨 本项目的主要目标是通过提供以下内容来弥合开发、安全和运维团队之间的差距: - **教育资源**:从基础到高级主题的精选 DevSecOps 概念学习内容 - **实用工具**:包含分类和对比的综合安全工具目录 - **实施指南**:在 CI/CD 流水线中实施安全的真实案例和最佳实践 - **社区协作**:分享 DevSecOps 实践知识和经验的平台 - **路线图指导**:针对不同角色和技能水平的结构化学习路径 ## 🚀 功能特性 - **🛠️ 工具目录**:发现并比较多个类别的安全工具 - **📚 学习资源**:精选的书籍、课程、视频和练习平台 - **🛣️ DevSecOps 路线图**:从初学者到专家的循序渐进学习路径 - **💻 代码示例**:即用型 CI/CD 流水线配置 - **👥 社区**:贡献指南和协作资源 ## 💡 为什么选择 DevSecOps? 将安全性集成到 DevOps 实践中可带来诸多益处: - **早期漏洞检测**:在开发生命周期早期识别并修复安全问题 - **更快的修复速度**:通过自动化扫描减少修复安全漏洞的时间 - **降低风险**:最大限度地减少生产环境中的安全相关事件 - **合规性**:通过内置安全检查满足监管要求 - **成本效益**:在安全问题修复成本较低时尽早解决 - **协作**:促进开发、安全和运维团队之间更好的合作 ## 📋 前置条件 在开始之前,请确保您已安装以下软件: - **Node.js**(v18 或更高版本) - **npm** 或 **yarn** 包管理器 - **Git** 用于版本控制 ## 🛠️ 安装说明 1. **克隆仓库:** git clone https://github.com/hautph/awesome-devsecops-v2.git cd awesome-devsecops-v2 2. **安装依赖:** npm install # 或 yarn install # 或 bun install 3. **启动开发服务器:** npm run dev # 或 yarn dev # 或 bun dev 4. **打开浏览器:** 访问 `http://localhost:3000` 查看运行中的应用程序。 ## 🏗️ 项目结构 ``` awesome-devsecops-v2/ ├── src/ │ ├── app/ # Next.js 13+ app directory │ │ ├── api/ # API routes │ │ ├── community/ # Community page │ │ ├── examples/ # Code examples │ │ ├── resources/ # Learning resources │ │ ├── roadmap/ # DevSecOps roadmap │ │ ├── tools/ # Tools directory │ │ ├── globals.css # Global styles │ │ ├── layout.tsx # Root layout │ │ └── page.tsx # Home page │ ├── components/ # React components │ │ ├── layout/ # Layout components │ │ └── ui/ # UI components (shadcn/ui) │ ├── data/ # Static data files │ │ ├── tools.json # Tools database │ │ ├── resources.json # Learning resources │ │ ├── roadmap.json # Roadmap data │ │ └── examples.json # Code examples │ ├── hooks/ # React hooks │ │ ├── use-mobile.ts # Mobile detection hook │ │ └── use-toast.ts # Toast notification hook │ ├── lib/ # Utility functions │ │ ├── db.ts # Database utilities │ │ ├── types.ts # Type definitions │ │ └── utils.ts # Helper functions │ └── types/ # Type definitions │ └── index.ts # Shared type definitions ├── public/ # Static assets ├── .env.example # Environment variables example ├── .gitignore # Git ignore rules ├── next.config.ts # Next.js configuration ├── package.json # Project dependencies ├── tailwind.config.ts # Tailwind CSS configuration └── tsconfig.json # TypeScript configuration ``` ## 🎯 可用脚本 - `npm run dev` - 启动开发服务器 - `npm run build` - 为生产环境构建 - `npm run start` - 启动生产服务器 - `npm run lint` - 运行 ESLint - `npm run format` - 使用 Prettier 格式化代码 - `npm run db:push` - 将 Prisma schema 推送到数据库 - `npm run db:generate` - 生成 Prisma client - `npm run db:migrate` - 运行 Prisma 迁移 - `npm run db:reset` - 重置 Prisma 数据库 - `bun run dev` - 使用 Bun 启动开发服务器 - `bun run build` - 使用 Bun 为生产环境构建 - `bun run start` - 使用 Bun 启动生产服务器 - `bun run db:push` - 使用 Bun 将 Prisma schema 推送到数据库 - `bun run db:generate` - 使用 Bun 生成 Prisma client - `bun run db:migrate` - 使用 Bun 运行 Prisma 迁移 - `bun run db:reset` - 使用 Bun 重置 Prisma 数据库 ## 🛡️ 包含的 DevSecOps 工具 ### 静态应用程序安全测试 (SAST) - SonarQube - Semgrep - CodeQL - Bandit - Brakeman ### 动态应用程序安全测试 (DAST) - OWASP ZAP - Burp Suite - Nuclei ### 软件成分分析 (SCA) - Snyk - OWASP Dependency-Check - Trivy ### 容器安全 (Container Security) - Trivy - Clair - Hadolint - Falco ### 基础设施即代码 安全 - Checkov - tfsec - Terrascan - KICS ### 密钥管理 - GitLeaks - TruffleHog - HashiCorp Vault - detect-secrets ## 📚 学习资源 该平台包含分类的学习材料: - **书籍**:综合安全指南 - **课程**:在线培训计划 - **视频**:教程和会议演讲 - **练习平台**:动手实践的 CTF 和实验室 - **文档**:官方指南和参考资料 ## 🛣️ DevSecOps 路线图 遵循我们结构化的学习路径: 1. **初学者**(4-6 周):基础知识和基本工具 2. **中级**(8-12 周):高级工具和实践 3. **高级**(12-16 周):专家级安全架构 ## 🎨 技术栈 - **框架**:Next.js 16+ (App Router) - **语言**:TypeScript - **样式**:Tailwind CSS - **UI 组件**:shadcn/ui - **图标**:Lucide React - **状态管理**:React Hooks, Zustand - **数据获取**:TanStack Query - **表单**:React Hook Form with Zod validation - **图表**:Recharts - **动画**:Framer Motion - **拖放**:@dnd-kit - **数据表格**:TanStack Table - **认证**:NextAuth.js - **国际化**:next-intl - **数据库**:Prisma ORM - **数据**:静态 JSON 文件 - **代码检查**:ESLint - **格式化**:Prettier ## 🔧 配置 ### 环境变量 创建一个 `.env.local` 文件用于特定环境的配置。您可以参考项目根目录下的 `.env.example` 文件: ``` # Analytics(可选) NEXT_PUBLIC_GA_ID=your-google-analytics-id # API Keys(如果需要) API_KEY=your-api-key # Database URL(如果使用数据库) DATABASE_URL=your-database-url ``` ### 自定义 - **主题**:修改 `src/app/globals.css` 和 `tailwind.config.ts` - **组件**:在 `src/components/ui/` 中自定义 UI 组件 - **数据**:更新 `src/data/` 中的 JSON 文件或在 `prisma/schema.prisma` 中配置 Prisma 数据库 - **数据库**:使用 Prisma 命令管理数据库 schema 和迁移 ## 🚨 安全 本项目遵循 DevSecOps 安全最佳实践: - 通过自动化扫描定期更新依赖项 - 静态应用程序安全测试 (SAST) 集成 - 遵循安全优先原则的安全配置默认值 - 整个应用程序中的输入验证和清理 - 遵守所有集成工具和服务的安全准则 - 妥善处理密钥和环境变量 ## 📄 许可证 本项目基于 MIT 许可证授权 - 详情请参阅 [LICENSE](LICENSE) 文件。 该项目是开源的,欢迎贡献。通过贡献,您同意您的贡献将基于相同的 MIT 许可证进行授权。 ## 📞 支持 - **问题**:在 [GitHub Issues](https://github.com/hautph/awesome-devsecops-v2/issues) 上报告错误 - **讨论**:加入我们的 [GitHub Discussions](https://github.com/hautph/awesome-devsecops-v2/discussions) - **社区**:与其他 DevSecOps 从业者联系 ## 🔄 更新 我们定期更新: - 包含新安全工具的工具数据库 - 学习资源和教程 - 包含当前最佳实践的路线图 - 针对现代 CI/CD 平台的代码示例 如果您觉得有用,请 **Star 本仓库**! ⭐ *为 DevSecOps 社区用 ❤️ 制作*
标签:Awesome 列表, CI/CD 安全, DAST, DevSecOps, IaC 安全, SAST, Web截图, 上游代理, 学习路线图, 安全工具列表, 安全左移, 安全开发运维, 容器安全, 恶意软件分析, 数据投毒防御, 文档安全, 最佳实践, 盲注攻击, 结构化查询, 网络安全, 自动化安全, 自动化攻击, 软件供应链安全, 软件开发工具包, 远程方法调用, 隐私保护