Defender for Containers は、次のうちどれで実行されていても、Kubernetes 環境ごとに異なる方法で設計されています。
Azure Kubernetes Service (AKS) - コンテナー化されたアプリケーションの開発、デプロイ、管理を行うための Microsoft の管理サービス。
接続されたアマゾン ウェブ サービス (AWS) アカウント内の Amazon Elastic Kubernetes Service (EKS) - 独自の Kubernetes コントロール プレーンまたはノードをインストールし、操作および保守する必要なく、AWS 上で Kubernetes を実行するための Amazon の管理サービス。
接続された Google Cloud Platform (GKE) プロジェクトの Google Kubernetes Engine (GKE) - GCP インフラストラクチャを使用してアプリケーションをデプロイ、管理、スケーリングするための Google の管理された環境。
管理されていない Kubernetes のディストリビューション (Azure Arc 対応の Kubernetes を使用) - Cloud Native Computing Foundation (CNCF) 認定の Kubernetes クラスターを、オンプレミスまたは IaaS 上でホストします。
注
Defender for Containers による Arc 対応の Kubernetes クラスター (AWS EKS、GCP GKE) のサポートはプレビュー機能です。
Kubernetes コンテナーを保護するために、Defender for Containers は次の情報を受け取って分析します。
- API サーバーからの監査ログとセキュリティ イベント
- コントロール プレーンからのクラスター構成情報
- Azure Policy からのワークロード構成
- ノード レベルからのセキュリティ シグナルとイベント
サポートされるオペレーティング システム、使用できる機能、送信プロキシなどの実装の詳細については、「Defender for Containers の機能の可用性」を参照してください。
各 Kubernetes 環境のアーキテクチャ
Defender for Cloud と AKS クラスターのアーキテクチャ ダイアグラム
Defender for Cloud が Azure Kubernetes Service でホストされているクラスターを保護する場合、監査ログ データの収集はエージェントレスで行われ、追加のコストや構成を考慮することなく、Azure インフラストラクチャを通じて自動的に収集されます。 Microsoft Defender for Containers が提供する完全な保護を受けるには、以下のコンポーネントが必要です。
- Defender センサー: 各ノードにデプロイされ、eBPF テクノロジを使用してホストからのシグナルを収集し、実行時の保護を提供する DaemonSet。 このセンサーは Log Analytics ワークスペースに登録され、データ パイプラインとして使用されます。 ただし、監査ログ データは Log Analytics ワークスペースに保存されません。 Defender センサーは AKS セキュリティ プロファイルとしてデプロイされます。
注
AKS クラスターで Defender センサーが構成されると、調整プロセスがトリガーされます。 これは Defender for Containers プランの一部として発生し、想定される動作です。
- Kubernetes 用の Azure Policy: オープンソースの Gatekeeper v3 を拡張し、Kubernetes アドミッション コントロールに Webhook として登録するポッド。これにより、クラスターに対して大規模な実施とセーフガードを一元的かつ一貫性のある方法で適用できます。 Kubernetes 用の Azure Policy ポッドは、AKS アドオンとしてデプロイされます。 クラスター内の 1 つのノードにのみインストールされます。 詳細については、「Kubernetes ワークロードを保護する」および「Kubernetes クラスター用の Azure Policy について理解する」を参照してください。
Defender センサー コンポーネントの詳細
| ポッド名 | Namespace | サブタイプ | 簡単な説明 | 能力 | リソースの制限 | エグレスが必要です |
|---|---|---|---|---|---|---|
| microsoft-defender-collector-ds-* | kube-system | DaemonSet | Kubernetes 環境からインベントリ イベントとセキュリティ イベントを収集することに重点を置いたコンテナー セットです。 | SYS_ADMIN、 SYS_RESOURCE、 SYS_PTRACE |
メモリ: 296Mi CPU: 360m |
いいえ |
| microsoft-defender-collector-misc-* | kube-system | デプロイ | 特定のノードにバインドされていない Kubernetes 環境からインベントリ イベントとセキュリティ イベントを収集することに重点を置いたコンテナー セットです。 | なし | メモリ: 64Mi CPU: 60m |
いいえ |
| microsoft-defender-publisher-ds-* | kube-system | DaemonSet | 収集したデータを Microsoft Defender for Containers のバックエンド サービスに公開して、データの処理と分析を行います。 | なし | メモリ: 200 Mi CPU: 60m |
Https 443 アウトバンド アクセスの前提条件 の詳細情報 |
* リソースの制限は構成できません。Kubernetes リソースの制限の詳細を確認してください。
Azure での Kubernetes のエージェントレス検出のしくみ
検出プロセスは、間隔をおいて取得したスナップショットに基づいています。
Kubernetes のエージェントレス検出拡張機能を有効にすると、次のプロセスが発生します。
作成:
- 拡張機能が Defender CSPM から有効になっている場合、Defender for Cloud では
CloudPosture/securityOperator/DefenderCSPMSecurityOperatorという顧客環境で ID が作成されます。 - 拡張機能が Defender for Containers から有効になっている場合、Defender for Cloud では
CloudPosture/securityOperator/DefenderForContainersSecurityOperatorという顧客環境で ID が作成されます。
- 拡張機能が Defender CSPM から有効になっている場合、Defender for Cloud では
割り当て: Defender for Cloud では、Kubernetes エージェントレス オペレーターという組み込みロールが、サブスクリプション スコープでその ID に割り当てられます。 このロールには、次のアクセス許可が含まれています。
- AKS 読み取り (Microsoft.ContainerService/managedClusters/read)
- 次のアクセス許可を使用する AKS の信頼されたアクセス。
- Microsoft.ContainerService/managedClusters/trustedAccessRoleBindings/write
- Microsoft.ContainerService/managedClusters/trustedAccessRoleBindings/read
- Microsoft.ContainerService/managedClusters/trustedAccessRoleBindings/delete
AKS の信頼されたアクセスの詳細を確認してください。
検出: システム割り当て ID を使用して、Defender for Cloud では AKS の API サーバーへの API 呼び出しにより、環境内の AKS クラスターの検出が実行されます。
バインド: AKS クラスターが検出されると、Defender for Cloud は、作成された ID と Kubernetes の
ClusterRoleaks:trustedaccessrole:defender-containers:microsoft-defender-operator の間にClusterRoleBindingを作成して、AKS のバインド操作を実行します。ClusterRoleは、API を使って表示することができ、Defender for Cloud のデータ プレーンにクラスター内での読み取りアクセス許可を付与します。
注
コピーされたスナップショットは、クラスターと同じリージョンに保持されます。
次のステップ
この概要では、Microsoft Defender for Cloud でのコンテナー セキュリティのアーキテクチャについて説明しました。 プランを有効にするには、以下を参照してください。




