翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
EKS クラスターの KMS エンベロープ暗号化
注記
Amazon Elastic Kubernetes Service (Amazon EKS) はデフォルトでエンベロープ暗号化を備えており、Kubernetes バージョン 1.28 以降を実行している EKS クラスター内のすべての Kubernetes API データが暗号化の対象となります。詳細については、「EKS ユーザーガイド」の「すべての Kubernetes API データのデフォルトのエンベロープ暗号化」を参照してください。
EKS では、AWS KMS
以前は、Amazon EKS はクラスターの作成時にのみ KMS キーを使用したエンベロープ暗号化の有効化
EKS 暗号化プロバイダーによるdefense-in-depthのサポートの詳細については、AWS コンテナブログ
KMS 暗号化を有効にしたクラスターの作成
# kms-cluster.yaml # A cluster with KMS encryption enabled --- apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name: kms-cluster region: us-west-2 managedNodeGroups: - name: ng # more config secretsEncryption: # KMS key used for envelope encryption of Kubernetes secrets keyARN: arn:aws:kms:us-west-2:<account>:key/<key>
eksctl create cluster -f kms-cluster.yaml
既存のクラスターで KMS 暗号化を有効にする
まだ有効にしていないクラスターで KMS 暗号化を有効にするには、 を実行します。
eksctl utils enable-secrets-encryption -f kms-cluster.yaml
または 設定ファイルなし:
eksctl utils enable-secrets-encryption --cluster=kms-cluster --key-arn=arn:aws:kms:us-west-2:<account>:key/<key> --region=<region>
EKS クラスターで KMS 暗号化を有効にすることに加えて、eksctl は注釈 で更新することで、新しい KMS キーを使用して既存のすべての Kubernetes シークレットを再暗号化しますeksctl.io/kms-encryption-timestamp
。この動作は--encrypt-existing-secrets=false
、次のように を渡すことで無効にできます。
eksctl utils enable-secrets-encryption --cluster=kms-cluster --key-arn=arn:aws:kms:us-west-2:<account>:key/<key> --encrypt-existing-secrets=false --region=<region>
クラスターで既に KMS 暗号化が有効になっている場合、eksctl は既存のすべてのシークレットの再暗号化に進みます。
注記
KMS 暗号化を有効にすると、別の KMS キーを使用するように無効化または更新することはできません。