Azure Kubernetes Service (AKS)ガードレールの取り組み

この記事では、Azure Kubernetes Serviceが安全に展開されるようにするためのポリシー ガードレールについて説明します。

イニシアチブの詳細

Azure Enclaveは、AKSガードレールイニシアチブ(ポリシーセット定義ID d300338e-65d1-4be3-b18e-fb4ce5715a8f)をワークロードリソースグループに割り当てます。

テーブルの Effect 値は、ポリシー定義でサポートされる効果を示しています。 ポリシー割り当ての効果的な動作は、Azure Enclaveのポリシー設定やポリシーパラメータによって異なる場合があります。

このイニシアチブはKMSポリシーを異なる参照IDで2回参照しています。 この表は、それぞれのユニークなポリシー定義を一度だけリストアップしています。

AKS GitHub リポジトリ

GitHub リポジトリ

AKS ポリシーの組み込み

名前 説明 バージョン タイプ サポートされている定義の効果 ポリシー定義
承認された IP 範囲は、Kubernetes Services で定義する必要があります Kubernetes Service Management API へのアクセスは、特定の範囲の IP にのみ API アクセスに許可して制限する必要があります。 許可されたIP範囲にアクセスを制限し、許可されたネットワークのアプリケーションのみがクラスターにアクセスできるようにしましょう。 2.0.1 BuiltIn 監査: 無効化 Link
Kubernetes クラスター Azureキー管理サービス (KMS) を有効にする必要がある Kubernetes クラスターのセキュリティのために etcd での保存時にシークレット データを暗号化するため、キー管理サービス (KMS) を使います。 詳細については、https://aka.ms/aks/kmsetcdencryption を参照してください。 1.1.0 BuiltIn 監査: 無効化 Link
Azure Kubernetes Service のクラスターでは Command Invoke を無効にする必要があります コマンドの呼び出しを無効にすると、制限されたネットワーク アクセスや Kubernetes のロールベースのアクセス制御のバイパスを回避してセキュリティを強化できます 1.0.1 BuiltIn 監査: 無効化 Link
プライベート クラスター Azure Kubernetes Service有効にする必要がある AZURE KUBERNETES SERVICE クラスターのプライベート クラスター機能を有効にして、API サーバーとノード プール間のネットワーク トラフィックがプライベート ネットワークのみに残っていることを確認します。 この要件は多くの規制および業界のコンプライアンス基準で一般的です。 2.0.0 BuiltIn 監査: 無効化 Link
Azure Kubernetes Service クラスター内のオペレーティング システムとデータ ディスクの両方をカスタマー マネージド キーで暗号化する必要がある 顧客管理キーを用いてOSおよびデータディスクを暗号化することで、鍵管理においてより大きな制御と柔軟性が得られます。 この要件は多くの規制および業界のコンプライアンス基準で一般的です。 2.0.0 BuiltIn 監査: 無効化 Link
Role-Based Access Control(RBAC)はKubernetesサービスで使用すべきです ユーザーが実行できるアクションをきめ細かくフィルター処理するには、Role-Based Access Control (RBAC) を使用して Kubernetes Service クラスターのアクセス許可を管理し、関連する承認ポリシーを構成します。 1.1.0 BuiltIn 監査: 無効化 Link
Azure Kubernetes Service クラスターはマネージド ID を使用する必要があります マネージドIDを使ってサービスプリンシパルをラップし、クラスタ管理を簡素化し、サービスプリンシパル管理に必要な複雑さを回避しましょう。 詳細については、https://aka.ms/aks-update-managed-identities を参照してください 1.0.1 BuiltIn 監査: 無効化 Link
クラスター Azure Kubernetes Service Defender プロファイルが有効になっている必要がある Microsoft Defender for Containers では、環境のセキュリティ強化、ワークロード保護、ランタイム保護など、クラウドネイティブの Kubernetes セキュリティ機能が提供されます。 Azure Kubernetes Service クラスターで SecurityProfile.AzureDefender を有効にすると、セキュリティ イベント データを収集するために、エージェントがクラスターにデプロイされます。 Microsoft Defender for Containersについては、Defender for Containersで詳しく学びましょう。 2.0.1 BuiltIn 監査: 無効化 Link