コース概要

1. 静的コード分析の概念と範囲

  • 定義:静的解析、SAST、ルールカテゴリと深刻度。
  • 安全なSDLCにおける静的解析の範囲とリスクカバー範囲。
  • SonarQubeがセキュリティ制御と開発者ワークフローにどのように組み込まれるか。

2. SonarQubeの概要:機能とアーキテクチャ

  • コアサービス、データベース、スキャナーコンポーネント。
  • 品質ゲート、品質プロファイル、品質ゲートのベストプラクティス。
  • セキュリティ関連機能:脆弱性、SASTルール、CWEマッピング。

3. SonarQubeサーバーUIのナビゲーションと使用方法

  • プロジェクト、問題、ルール、測定値、ガバナンスビューの紹介。
  • 問題ページの解釈、トレーサビリティ、修正ガイダンス。
  • レポート生成とエクスポートオプション。

4. ビルドツールでのSonarScanner設定

  • Maven、Gradle、Ant、MSBuild用のSonarScannerのセットアップ。
  • スキャナープロパティ、除外設定、マルチモジュールプロジェクトのベストプラクティス。
  • 正確な分析のために必要なテストデータとカバレッジレポートの生成。

5. Azure DevOpsとの統合

  • Azure DevOpsでSonarQubeサービス接続の設定。
  • Azure PipelinesにSonarQubeタスクを追加し、PR装飾を行う。
  • SonarQubeにAzure Reposをインポートし、自動分析を実行する。

6. プロジェクト設定とサードパーティアナライザー

  • JavaおよびAngular用のプロジェクトレベルの品質プロファイルとルール選択。
  • サードパーティアナライザーやプラグインライフサイクルの扱い。
  • 分析パラメータの定義と継承。

7. 役割、責任、および安全な開発手法のレビュー

  • 役割の分離:開発者、レビュアー、DevOps、セキュリティオーナー。
  • CI/CDプロセスのための役割と責任マトリックスの構築。
  • 既存の安全な開発手法のレビューと推奨プロセス。

8. 上級:ルールの追加、調整、およびグローバルセキュリティ機能の強化

  • SonarQube Web APIを使用してカスタムルールを追加と管理。
  • 品質ゲートと自動ポリシー施行の調整。
  • SonarQubeサーバーのセキュリティ強化とアクセス制御のベストプラクティス。

9. 実践的なラボセッション(適用)

  • ラボA:5つのJavaリポジトリ(Quarkusを適宜使用)でSonarScannerを設定し、結果を分析する。
  • ラボB:1つのAngularフロントエンドのSonar分析を設定し、見つかった問題を解釈する。
  • ラボC:完全なパイプラインラボ—Azure DevOpsパイプラインにSonarQubeを統合し、PR装飾を有効にする。

10. テスト、トラブルシューティング、およびレポートの解釈

  • テストデータ生成とカバレッジ測定の戦略。
  • 一般的な問題とスキャナ、パイプライン、権限エラーのトラブルシューティング。
  • SonarQubeレポートを技術者および非技術的な利害関係者に読み解き、提示する方法。

11. ベストプラクティスと推奨事項

  • ルールセットの選択と段階的な施行戦略。
  • 開発者、レビュアー、ビルドパイプライン向けのワークフローの推奨事項。
  • SonarQubeをエンタープライズ環境でスケーリングするロードマップ。

まとめと次回のステップ

要求

  • ソフトウェア開発ライフサイクルの理解。
  • ソース管理と基本的なCI/CD概念に関する経験。
  • JavaまたはAngular開発環境に精通していること。

対象者

  • 開発者(Java / Quarkus / Angular)
  • DevOpsおよびCI/CDエンジニア
  • セキュリティエンジニアとアプリケーションセキュリティレビュアー
 21 時間

参加者の人数


参加者1人あたりの価格

お客様の声 (1)

今後のコース

関連カテゴリー