次の方法で共有


コードからランタイムへのコンテナー イメージのマップ

コンテナー レジストリに格納されている場合でも、Kubernetes クラスターで実行されている場合でも、コンテナー イメージで脆弱性が特定された場合、セキュリティ専門家は、最初に作成した CI/CD パイプラインに戻すのに苦労する可能性があります。 このコンテキストがないと、問題を解決する開発者を特定することは困難です。 Microsoft Defender Cloud Security Posture Management (CSPM) には、クラウドネイティブ アプリケーションをコードからクラウドにマップできる DevOps セキュリティ機能が含まれています。 その結果、開発者の修復ワークフローを簡単に開始し、コンテナー イメージの脆弱性の修復にかかる時間を短縮できます。

コードからランタイムへ – 技術的な前提条件

コードとランタイムのリレーションシップを確立するには、次の前提条件が必要です。

一般的な前提条件 (すべての方法)

使用されるマッピング方法に関係なく、次の前提条件が適用されます。

  • クラウド環境で Defender CSPM (クラウド セキュリティ体制管理) または Defender for Containers を有効にする必要がある
    • Defender for Containers には、限られたマッピング機能セットが含まれています。
  • コンテナー イメージは CI/CD パイプラインを介して構築する必要があります
    • 手動でビルドおよびプッシュされたイメージはサポートされていません (場合によっては、手動でビルドまたはプッシュされたイメージにマッピングが残っている可能性があります)。
  • コンテナー イメージは、次のいずれかの方法 で Defender for Cloud によって検出可能である必要があります。
    • サポートされているコンテナー レジストリに格納されている場合、または
    • サポートされている Kubernetes 環境での実行

オプション 1: コード環境を Defender for Cloud に接続する

コード環境を Defender for Cloud に接続すると、一連の自動化されたツールが自動的にトリガーされます。 これらのツールは、既存の DevOps ワークフローには影響 せず 、コードからランタイムへのマッピングを有効にします。

注意

  • 現在、Azure DevOpsGitHub でサポートされています
  • 接続 にビルドおよびデプロイされたコンテナー イメージのサポートが制限されている可能性があります

参考資料:

オプション 2: Docker ラベルベースのマッピング

Docker ラベルベースのマッピングは、ビルド時にコンテナー イメージに直接埋め込まれたメタデータに依存します。 Defender for Cloud は、OCI/Docker イメージ マニフェストからこのメタデータを抽出し、それを使用してイメージをソース リポジトリに関連付けます。

参考資料:

注意

  • このメソッドでは、DevOps コネクタは必要 ありません
  • マッピングは、Defender CSPM または Defender for Containers でカバーされる Kubernetes 環境に対して実行されます。

オプション 3: GitHub 証明ベースのマッピング

アテステーションベースのマッピングでは、GitHub Actions ワークフロー中に生成された 暗号的に検証可能な由来メタデータ が使用されます。 これらの構成証明は、コンテナー イメージを正確なソース リポジトリ、コミット、およびビルド ID にリンクします。

参考資料:

Azure ポータルでコードとランタイムのマッピングを確認する

Azure DevOps CI/CD パイプラインでコンテナー イメージを構築し、レジストリにプッシュした後、クラウド セキュリティ エクスプローラーを使用してマッピングを確認します。

  1. Azure portal にサインインします。

  2. [Microsoft Defender for Cloud]>[クラウド セキュリティ エクスプローラー] の順に移動します。 クラウド セキュリティ エクスプローラーにコンテナー イメージ マッピングが表示されるまでに最大 4 時間かかることがあります。

  3. 基本的なマッピングを表示するには、[コンテナー イメージ]>+>[コード リポジトリからプッシュ] の順に選択します。

    コンテナーの基本的なマッピングを見つける方法を示すスクリーンショット。

  4. (省略可能) [コンテナー イメージ] の横にある [+] を選択し、クエリにその他のフィルター ([脆弱性あり] など) を追加して、CVE のあるコンテナー イメージのみをフィルター処理します。

  5. クエリを実行すると、コンテナー レジストリとパイプライン間のマッピングが表示されます。 詳細を表示するには、エッジの横にある [... ] を選択します。

    コンテナー マッピングの結果に対する高度なクエリを示すスクリーンショット。

次のステップ