課程簡介

1. 靜態代碼分析的概念與範圍

  • 定義:靜態分析、SAST、規則類別與嚴重性
  • 靜態分析在安全SDLC中的範圍與風險覆蓋
  • SonarQube如何融入安全控制與開發者工作流

2. SonarQube概述:功能與架構

  • 核心服務、數據庫與掃描器組件
  • 質量門、質量配置文件與質量門最佳實踐
  • 安全相關功能:漏洞、SAST規則與CWE映射

3. SonarQube服務器UI的導航與使用

  • 服務器UI導覽:項目、問題、規則、度量與治理視圖
  • 解讀問題頁面、可追溯性與修復指導
  • 報告生成與導出選項

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工程師
  • 安全工程師和應用安全評審員
 21 時間:

人數


每位參與者的報價

客戶評論 (1)

即將到來的課程

課程分類