聯繫我們

課程簡介

1. 靜態代碼分析的觀念與範疇

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

2. SonarQube 概觀:功能與架構

  • 核心服務、資料庫與掃描器組件
  • 品質門(Quality Gates)、品質檔案(Quality Profiles)及最佳實踐
  • 安全相關功能:漏洞、SAST 規則與 CWE 映射

3. SonarQube 伺服器用戶界面的導航與使用

  • 伺服器 UI 導覽:專案、問題、規則、指標與治理視圖
  • 解讀問題頁面、可追溯性與修復指引
  • 報告生成與匯出選項

4. 使用構建工具配置 SonarScanner

  • 為 Maven、Gradle、Ant 和 MSBuild 設定 SonarScanner
  • 掃描器屬性、排除項及多模組專案的最佳實踐
  • 生成必要的測試數據與覆蓋率報告以確保分析準確性

5. 與 Azure DevOps 的整合

  • 在 Azure DevOps 中配置 SonarQube 服務連接
  • 在 Azure Pipelines 中添加 SonarQube 任務並進行 PR 裝飾(PR decoration)
  • 將 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 的規劃路線圖

總結與下一步

最低要求

  • 了解軟體開發生命週期(SDLC)
  • 具備版本控制與基本 CI/CD 概念的經驗
  • 熟悉 Java 或 Angular 開發環境

目標受眾

  • 開發人員(Java / Quarkus / Angular)
  • DevOps 與 CI/CD 工程師
  • 安全工程師與應用安全審查員
 21 小時

人數


每位參與者的報價

客戶評論 (1)

即將到來的課程

課程分類