すべてのプロダクト
Search
ドキュメントセンター

Key Management Service:KMS を使用した Kubernetes クラスターのシークレットのワンクリック暗号化

最終更新日:Apr 01, 2026

Container Service for Kubernetes (ACK) を使用すると、Key Management Service (KMS) のカスタマーマスターキー (CMK) を利用して、プロフェッショナルマネージド Kubernetes クラスターの etcd に保存されているシークレットを暗号化できます。これにより、クラスターの約 50 個の組み込みシークレットと、作成するアプリケーションシークレットに保存されているパスワード、証明書、認証情報、アクセスキーなどの機密データを保護します。

仕組み

ACK は、Kubernetes の KMS プロバイダーメカニズムを使用してエンベロープ暗号化を実装します。エンベロープ暗号化では、2 つのキーレイヤーを使用します。

  • データ暗号化キー (DEK): 各シークレットに対して生成される一意キー。DEK は実際のシークレットデータを暗号化します。

  • キー暗号化キー (KEK): ご利用の KMS の CMK。KEK は DEK を暗号化します。

暗号化フロー

Kubernetes Secret API を使用して Kubernetes Secret を格納する場合、

  1. API サーバーがランダムな DEK を生成します。

  2. DEK がシークレットデータを暗号化します。

  3. KMS がご利用の CMK を使用して DEK を暗号化します。

  4. DEK の暗号文は、暗号化されたシークレットとともに etcd に保存されます。

復号フロー

Secret を取得するとき:

  1. KMS がご利用の CMK を使用して DEK 暗号文を復号します (Decrypt 操作経由)。

  2. プレーンテキスト DEK がシークレットデータを復号します。

  3. 復号されたシークレットが返されます。

前提条件

開始する前に、以下を確認してください。

  • AliyunCSManagedSecurityRole ロールが割り当てられた Alibaba Cloud アカウント。ロールが割り当てられていない場合、シークレット暗号化を有効にするときに割り当てるよう求められます。

  • AliyunKMSCryptoAdminAccess 権限が付与された RAM ユーザー。詳細については、「RAM ユーザーへの権限付与」をご参照ください。

  • KMS コンソールで作成された Aliyun_AES_256 タイプの CMK。詳細については、「CMK の作成」をご参照ください。

説明 Aliyun_AES_256 タイプの CMK のみがサポートされています。

新しいクラスターでの保管時のシークレット暗号化の有効化

  1. ACK コンソールにログインします。

  2. 左側のナビゲーションウィンドウで、[クラスター] をクリックします。

  3. [クラスター] ページの右上隅で、[クラスターテンプレート] をクリックします。

  4. [クラスターテンプレートの選択] ダイアログボックスで、[プロフェッショナルマネージド Kubernetes クラスター] を選択し、[作成] をクリックします。

  5. [マネージド Kubernetes] タブで、[Secret の暗号化] を見つけ、[キーの選択] を選択し、ドロップダウンリストから CMK ID を選択します。

  6. 残りのパラメーターを設定し、クラスターの作成を完了します。

クラスター作成の詳細については、「ACK Pro クラスターの作成」をご参照ください。

既存のクラスターでの保管時のシークレット暗号化の有効化

  1. [クラスター] ページで、プロフェッショナルマネージドKubernetes クラスターの名前をクリックします。

  2. [基本情報] タブをクリックします。[基本情報] セクションで、[シークレット暗号化] を有効化します。

  3. [シークレットの暗号化] ダイアログボックスで、[既存のキー] ドロップダウンリストから CMK ID を選択し、[OK] をクリックします。

クラスターのステータスが [更新中] から [実行中] に変更されると、Secret の保管時の暗号化が有効になります。

暗号化の検証

シークレット暗号化がアクティブであることを確認するには、次の手順を実行します。

  1. ActionTrail コンソールを開きます。

  2. [イベント詳細クエリ] ページに移動します。

  3. AliyunCSManagedSecurityRole ロールでイベントをフィルタリングし、KMS の暗号化または復号の呼び出しを探します。

KMS イベントが表示された場合、クラスターの保管時のシークレット暗号化はアクティブです。

関連トピック