Defender for Containers でゲート展開を有効にする

この記事では、Microsoft Defender for Containers を使用して Kubernetes クラスターのゲートデプロイを有効にして構成する方法について説明します。

Gated デプロイでは、サポートされているレジストリ (Azure Container Registry (ACR)、Amazon Elastic Container Registry (ECR)、および Google Artifact Registry) からの脆弱性スキャン結果を使用して、デプロイ中にコンテナー イメージのセキュリティ ポリシーが適用されます。 クラスターが許可する前に、Kubernetes アドミッション コントローラーと連携してイメージを評価します。

[前提条件]

必要条件 詳細
ディフェンダー プラン コンテナー レジストリと Kubernetes クラスターのサブスクリプション/アカウントの両方で Defender for Containers を有効にします。
重要: コンテナー レジストリと Kubernetes クラスターが異なる Azure サブスクリプション (または AWS アカウント/GCP プロジェクト) に存在する場合は、両方のクラウド アカウントで Defender for Containers プランと関連する拡張機能を有効にする必要があります。
拡張を計画する Defender センサー、セキュリティ ゲーティング、セキュリティファインディング、レジストリ アクセス。
Defender for Containers プラン設定で、これらのプラン拡張機能のオンとオフを切り替えます。 新しい Defender for Containers 環境では、既定で有効になっています。
Kubernetes クラスターのサポート AKS、EKS、GKE - バージョン 1.31 以降。
レジストリのサポート Azure Container Registry (ACR)、Amazon Elastic Container Registry (ECR)、または Google Artifact Registry を使用します。
Permissions セキュリティ管理者以上のテナントアクセス許可を持つゲート展開ポリシーを作成または変更します。 セキュリティ閲覧者以上のテナント アクセス許可を持つユーザーを表示します。

ゲートデプロイを有効にしてセキュリティ規則を作成する

手順 1: 必要なプラン拡張機能を有効にする

  1. Microsoft Defender for Cloud>Environment の設定に移動します。

  2. 関連するサブスクリプション、AWS アカウント、または GCP プロジェクトを選択します。

  3. [ 設定と監視] で、次のトグルをオンにします。

    • Defender センサー
      • セキュリティ ゲーティング
    • レジストリ アクセス
      • セキュリティ調査結果

Microsoft Defender for Cloud で有効になっているトグルを示す [環境設定] のスクリーンショット。

手順 2: セキュリティ規則にアクセスする

  1. [環境設定] で、[セキュリティ規則] タイルに移動します。

    Microsoft Defender for Cloud の [脆弱性評価] タブが表示された [セキュリティ規則] ウィンドウのスクリーンショット。

  2. [ 脆弱性評価 ] タブを選択します。

    セキュリティ ルールの脆弱性評価のスクリーンショット。

手順 3: 新しいルールを作成する

既定では、Defender プランと必要な拡張機能を有効にすると、ポータルによって、高または重大な脆弱性を持つイメージにフラグを設定する監査規則が作成されます。

  1. [規則の追加] を選択します。
  2. 以下の項目に入力してください。
フィールド 説明
規則の名前 ルールの一意の名前
アクション [監査] または [拒否] を選択する
スコープ名 スコープのラベル
クラウド スコープ Azure サブスクリプション、AWS アカウント、または GCP プロジェクトを選択する
リソース スコープ クラスター、名前空間、ポッド、デプロイ、イメージ、ラベル セレクターから選択する
一致基準 [等しい]、[次の値で始まる]、[次の値で終了]、[次の値を含む]、[等しくない] の順に選択します

ルール作成ウィザードのスクリーンショット - 基本的な構成。

手順 4: 条件を定義する

[ スキャン構成] で、次のように指定します。

  • トリガー ルールの条件: 脆弱性の重大度レベルまたは特定の CVE ID を選択する

条件の種類と除外を含む [ルール構成] パネルのスクリーンショット。

手順 5: 除外を定義する

除外により、信頼されたリソースは制限規則をバイパスできます。

サポートされている除外の種類

タイプ 説明
CVE(共通脆弱性識別子) 特定の脆弱性 ID
デプロイメント 対象指定デプロイ
Image 特定の画像ダイジェスト
Namespace Kubernetes 名前空間
ポッド 特定のポッド
レジストリ コンテナー レジストリ
リポジトリ イメージ リポジトリ

一致条件

  • 等しい
  • [指定値で始まる]
  • で終わる
  • Contains

時間制限付き構成

状態 動作
既定値 除外は無期限です
時間制限が有効 日付ピッカーが表示されます。 除外は、選択した日の終わりに期限切れになります

ルールの作成時に除外を構成します。 監査規則と拒否規則に適用されます。

期限切り替えのある除外構成パネルのスクリーンショット。

手順 6: 最終処理して保存する

  1. ルールの構成を確認します。
  2. ルールを保存してアクティブにするには、[ルールの 追加] を選択します。

拒否モードの構成

拒否モードでは、リアルタイム ポリシーの適用により、デプロイ中に 1 秒または 2 秒の遅延が発生する可能性があります。 アクションとして [拒否 ] を選択すると、通知が表示されます。

拒否モードが選択されている場合に表示されるヒントのスクリーンショット。

アドミッションの監視

ゲート展開イベントは、Defender for Cloud の [アドミッション監視 ] ビューに表示されます。 このビューでは、ルールの評価、トリガーされたアクション、影響を受けるリソースを可視化できます。 このビューを使用して、Kubernetes クラスター全体で監査と拒否の決定を追跡します。

ルールの評価とアクションを示す [受付監視] ビューのスクリーンショット。

イベントの詳細を表示する

特定の受付イベントを調査するには、一覧からそれを選択します。 詳細ウィンドウが開き、次の情報が表示されます。

  • タイムスタンプと受付アクション: イベントが発生したとき、およびイベントが許可されたか拒否されたか
  • トリガーの詳細: コンテナー イメージ ダイジェスト、検出されたすべての違反、およびトリガーされたルール名
  • ポリシーの説明: 評価に使用される脆弱性評価ポリシーと条件
  • ルール構成スナップショット: 適用された特定の条件と除外

トリガー情報、ポリシーの説明、およびルールの構成を示す [受付イベントの詳細] ウィンドウのスクリーンショット。

ルール設計のベスト プラクティス

  • 拒否モードを適用する前に、監査モードから開始して影響を監視します。
  • 誤検知を減らすために、ルールのスコープを狭くする (名前空間やデプロイなど)。
  • 時間制限付き除外を使用して、監視を維持しながら重要なワークフローのブロックを解除します。
  • [アドミッション監視] ビューで規則のアクティビティを定期的に確認して、適用戦略を調整します。

ゲート展開セキュリティ規則を無効または削除する

  • ゲート展開のセキュリティ規則を無効にする

    • [Microsoft Defender for Cloud 環境設定] ウィンドウで [セキュリティ規則] を選択します。
    • [ 脆弱性評価 ] を選択して、定義されたゲート展開セキュリティ規則の一覧を表示します。
    • セキュリティ規則を選択し、[ 無効] を選択します。
  • Gated Deployment セキュリティ規則を削除する

    • [Microsoft Defender for Cloud 環境設定] ウィンドウで [セキュリティ規則] を選択します。
    • [ 脆弱性評価 ] を選択して、定義されたセキュリティ規則の一覧を表示します。
    • セキュリティ規則を選択し、[削除] を選択 します

詳細なガイダンスとサポートについては、次のドキュメントを参照してください。