聯繫我們
 課程時長 21 時間:

課程簡介

1. 静态代码分析的概念和范围

  • 定义:静态分析、SAST、规则类别和严重性
  • 静态分析在安全 SDLC 中的范围和风险覆盖
  • SonarQube 如何融入安全控制和开发者工作流

2. SonarQube 概述:功能和架构

  • 核心服务、数据库和扫描器组件
  • 质量门、质量配置和质量门最佳实践
  • 安全相关功能:漏洞、SAST 规则和 CWE 映射

3. SonarQube 服务器界面的导航和使用

  • 服务器界面导览:项目、问题、规则、度量和治理视图
  • 解读问题页面、可追溯性和修复指导
  • 报告生成和导出选项

4. 使用构建工具配置 SonarScanner

  • 为 Maven、Gradle、Ant 和 MSBuild 设置 SonarScanner
  • 扫描器属性、排除项和多模块项目的最佳实践
  • 生成必要的测试数据和覆盖率报告,以便进行准确分析

5. 与 Azure DevOps 集成

  • 在 Azure DevOps 中配置 SonarQube 服务连接
  • 将 SonarQube 任务添加到 Azure Pipelines 和 PR 装饰
  • 将 Azure Repos 导入 SonarQube 并自动化分析

6. 项目配置和第三方分析器

  • 项目级质量配置以及 Java 和 Angular 的规则选择
  • 使用第三方分析器和插件生命周期
  • 定义分析参数和参数继承

7. 角色、职责和安全开发方法审查

  • 角色划分:开发者、审查者、DevOps、安全负责人
  • 为 CI/CD 流程构建角色和职责矩阵
  • 对现有安全开发方法进行审查和建议

8. 高级主题:添加规则、调优和增强全局安全功能

  • 使用 SonarQube Web API 添加和管理自定义规则
  • 调整质量门和自动化策略执行
  • 强化 SonarQube 服务器安全和访问控制的最佳实践

9. 动手实验环节(应用)

  • 实验 A:为 5 个 Java 仓库(适用时使用 Quarkus)配置 SonarScanner 并分析结果
  • 实验 B:为 1 个 Angular 前端配置 Sonar 分析并解读发现
  • 实验 C:完整流水线实验——将 SonarQube 与 Azure DevOps 流水线集成并启用 PR 装饰

10. 测试、故障排除和报告解读

  • 测试数据生成和覆盖率度量的策略
  • 常见问题以及扫描器、流水线和权限错误的故障排除
  • 如何阅读 SonarQube 报告并向技术和非技术利益相关者展示

11. 最佳实践和建议

  • 规则集选择和渐进式执行策略
  • 针对开发者、审查者和构建流水线的工作流建议
  • 在企业环境中扩展 SonarQube 的路线图

总结与后续步骤

最低要求

  • 了解软件开发生命周期
  • 具有源代码控制和基本 CI/CD 概念的经验
  • 熟悉 Java 或 Angular 开发环境

目标受众

  • 开发者(Java / Quarkus / Angular)
  • DevOps 和 CI/CD 工程师
  • 安全工程师和应用安全审查人员

人數


每位參與者的報價

客戶評論 (1)

即將到來的課程

課程分類