聯繫我們

課程簡介

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 儲存庫設定 SonarScanner(適用於 Quarkus),並分析結果
  • 實驗室 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)

課程分類