Cloud KMS では、データの暗号化、復号、署名、検証に使用する暗号鍵マテリアルが、鍵バージョンに保存されています。鍵には、0 個以上の鍵バージョンがあります。鍵をローテーションすると、新しい鍵バージョンが作成されます。
このトピックでは、鍵バージョンを無効にする方法について説明します。鍵が無効になっている間は、その鍵で暗号化されているデータにはアクセスできません。データにアクセスするには、鍵バージョンを再度有効にします。
鍵バージョンの無効化は、数秒から最大 3 時間までの整合性で行われます。鍵バージョンの有効化は、ほぼ即時に行えます。鍵バージョンへのアクセスは、Identity and Access Management(IAM)を使用して管理することもできます。IAM オペレーションの整合性は、数秒以内に確保されます。詳細については、IAM の使用をご覧ください。
また、完全に鍵バージョンを破棄することもできます。 組織のポリシーによっては、鍵バージョンを破棄する前に無効にする必要がある場合があります。詳細については、鍵バージョンの破棄を制御するをご覧ください。
鍵バージョンの無効化
鍵バージョンは、有効の状態において無効にできます。鍵バージョンを無効にする前に、その鍵がまだ使用されているかどうかを確認することをおすすめします。鍵の鍵使用状況の追跡の詳細を表示して、CMEK リソースを保護しているかどうかを確認できます。無効にする鍵バージョンで保護されているリソースがある場合は、鍵を無効にする前に別の鍵バージョンでリソースを再暗号化します。
Console
Google Cloud コンソールで、[鍵の管理] ページに移動します。
無効にする鍵バージョンの鍵が含まれる鍵リング名をクリックします。
無効にする鍵バージョンの鍵をクリックします。
無効にする鍵バージョンの横にあるチェック ボックスをオンにします。
ヘッダーの [無効にする] をクリックします。
確認プロンプトで、[無効にする] をクリックします。
gcloud
コマンドラインで Cloud KMS を使用するには、まず Google Cloud CLI の最新バージョンをインストールまたはアップグレードします。
gcloud kms keys versions disable key-version \ --key key \ --keyring key-ring \ --location location
key-version は、無効にする鍵のバージョンに置き換えます。key を鍵の名前に置き換えます。key-ring は、鍵が配置されているキーリングの名前に置き換えます。location をキーリングの Cloud KMS の場所に置き換えます。
すべてのフラグと有効な値については、--help
フラグを指定してコマンドを実行してください。
C#
このコードを実行するには、まず C# 開発環境を設定し、Cloud KMS C# SDK をインストールします。
Go
このコードを実行するには、まず Go 開発環境を設定し、Cloud KMS Go SDK をインストールします。
Java
このコードを実行するには、まず Java 開発環境を設定し、Cloud KMS Java SDK をインストールします。
Node.js
このコードを実行するには、まず Node.js 開発環境を設定し、Cloud KMS Node.js SDK をインストールします。
PHP
このコードを実行するには、まず Google Cloud での PHP の使用について学び、Cloud KMS PHP SDK をインストールします。
Python
このコードを実行するには、まず Python 開発環境を設定し、Cloud KMS Python SDK をインストールします。
Ruby
このコードを実行するには、まず Ruby 開発環境を設定し、Cloud KMS Ruby SDK をインストールします。
リクエストを送信すると、鍵バージョンの状態が無効に変わります。
無効な鍵バージョンは、課金対象のリソースです。
外部鍵の無効化または破棄
Cloud EKM 鍵と外部鍵の関連付けを一時的に無効にするには、Cloud EKM 鍵または鍵バージョンを無効にします。すべての鍵バージョンを無効にすることをおすすめします。鍵の無効化は 3 時間以内に有効になります。
鍵を無効にした場合、鍵へのアクセス権を取り消す必要があります。IAM オペレーションは数秒間一定です。また、外部鍵管理パートナー システムで Google Cloud サービス アカウントのアクセス権を取り消すことを検討してください。
Cloud EKM 鍵と外部鍵の関連付けを完全に削除するには、Cloud EKM 鍵バージョンの破棄をスケジュールします。破棄がスケジュールされた期間が経過すると、鍵は破棄されます。鍵バージョンの破棄は後から変更できません。鍵バージョンが破棄された後は、Cloud EKM 鍵バージョンで暗号化されたデータの暗号化やデータの復号はできなくなります。同じ外部鍵 URI または鍵のパスを使用している場合でも、破棄した Cloud EKM 鍵バージョンを再作成することはできません。外部鍵マテリアルを破棄する場合は、まず Google Cloud で鍵または鍵バージョンを破棄してから、Cloud EKM 鍵を破棄した後にのみ、外部鍵マネージャーで鍵マテリアルを破棄することをおすすめします。
Cloud KMS で鍵または鍵バージョンを無効にしても、外部鍵管理パートナー システムの鍵は変更されません。
Cloud KMS で手動で管理されている鍵バージョンを破棄しても、外部鍵管理パートナー システムの鍵は変更されません。Cloud KMS で調整された外部鍵バージョンを破棄すると、内部鍵マテリアルが破棄され、外部鍵管理パートナー システムにリクエストが送信されて外部鍵マテリアルが破棄されます。
鍵バージョンの有効化
鍵バージョンは、無効の状態で有効にできます。
Console
Google Cloud コンソールで、[鍵の管理] ページに移動します。
有効にする鍵バージョンの鍵が含まれる鍵リング名をクリックします。
有効にする鍵バージョンの鍵をクリックします。
有効にする鍵バージョンの横にあるチェック ボックスをオンにします。
ヘッダーの [有効にする] をクリックします。
確認プロンプトで [有効にする] をクリックします。
gcloud
コマンドラインで Cloud KMS を使用するには、まず Google Cloud CLI の最新バージョンをインストールまたはアップグレードします。
gcloud kms keys versions enable key-version \ --key key \ --keyring key-ring \ --location location
key-version は、有効にする鍵のバージョンに置き換えます。key は、鍵名で置き換えます。key-ring は、鍵が配置されているキーリングの名前に置き換えます。location をキーリングの Cloud KMS の場所に置き換えます。
すべてのフラグと有効な値については、--help
フラグを指定してコマンドを実行してください。
C#
このコードを実行するには、まず C# 開発環境を設定し、Cloud KMS C# SDK をインストールします。
Go
このコードを実行するには、まず Go 開発環境を設定し、Cloud KMS Go SDK をインストールします。
Java
このコードを実行するには、まず Java 開発環境を設定し、Cloud KMS Java SDK をインストールします。
Node.js
このコードを実行するには、まず Node.js 開発環境を設定し、Cloud KMS Node.js SDK をインストールします。
PHP
このコードを実行するには、まず Google Cloud での PHP の使用について学び、Cloud KMS PHP SDK をインストールします。
Python
このコードを実行するには、まず Python 開発環境を設定し、Cloud KMS Python SDK をインストールします。
Ruby
このコードを実行するには、まず Ruby 開発環境を設定し、Cloud KMS Ruby SDK をインストールします。
リクエストを送信すると、鍵バージョンの状態が有効に変わります。
必要な IAM 権限
鍵バージョンを有効または無効にするには、呼び出し元に、鍵、キーリング、またはプロジェクト、フォルダ、または組織に対する cloudkms.cryptoKeyVersions.update
IAM 権限が必要です。
この権限は、Cloud KMS 管理者のロール(roles/cloudkms.admin
)に付与されています。