この記事では、マネージド クラスター API を使用して、Azure Kubernetes Service (AKS)のゲートデプロイを構成する方法について説明します。 Helm を使用して、Defender for Containers センサーをインストールすることもできます。
ゲーテッドデプロイメントは、コンテナイメージをKubernetesクラスターに許可する前にアドミッションコントローラーで評価します。 AKSの場合、ゲーテッドデプロイメントエージェントはクラスターが使用するAzure Container Registry(ACR)への読み取りアクセス権が必要で、Microsoft Defender for Containersが生成する脆弱性発見の成果物にアクセスできます。
マネージド クラスター API を使用してゲート デプロイを構成する前に、AKS クラスターと APR のコンテナー コンポーネントに必要なDefenderを有効にします。
必要な ACR アクセスを提供するには、ユーザー割り当てマネージド ID を作成し、関連する ACR に対する読み取りアクセス許可を割り当て、フェデレーション ID 資格情報を構成し、マネージド クラスター API でマネージド ID を参照します。
前提条件
開始する前に、次のことを確認します。
Microsoft Azure のサブスクリプションを所有しています。 Azure サブスクリプションをお持ちでない場合は、無料サブスクリプションにサインアップすることができます。
Azure サブスクリプションでDefender for Cloudが有効になっています。
Defender for Containers は、AKS クラスターと Azure Container Registries (APR) を含むAzure サブスクリプションに対して有効になり、次のコンポーネントが有効になります。
- セキュリティ ゲーティングを使用したDefender センサー
- セキュリティの結果を使用したレジストリ アクセス
AKS クラスターには次の内容があります。
- OpenID Connect (OIDC) 発行者が有効になっている。
- Azureワークロード ID が有効になっています。
ユーザー割り当ての管理IDを作成・割り当てする権限。
クラスタで使用されるすべてのACRに対して AcrPull ロールまたは同等のリードロールを割り当てる権限。
マネージド ID を構成する
ゲート展開のために管理IDを設定するには以下の手順を実行します:
クラスターが使用するすべての ACR に対して、MSI に AcrPull ロールまたは同等の読み取りロールを割り当てます。
フェデレーション ID 資格情報 (FIC) を MSI に追加 します。これにより、ゲートデプロイ エージェントは、次の FIC パラメーターを使用して AKS ワークロード ID を使用して認証できます。
- 発行者: AKS OIDC 発行者 URL
-
サブジェクト: ゲートされたデプロイ エージェントによって使用されるサービス アカウント
system:serviceaccount:kube-system:defender-admission-controller-serviceaccount。 -
対象ユーザー:
api://AzureADTokenExchange
マネージド クラスター API 構成の securityGating セクションで、マネージド クラスター API 構成のセキュリティ制限セクションの下にある ID パラメーターに MSI の objectId を設定します。
IDENTITIESパラメータにMSIの
objectIdを設定することで、ゲーテッドデプロイメントエージェントが実行時にMSIを使用できるようにします。