Cloud Key Management Service(Cloud KMS)を使用すると、互換性のある Google Cloud サービスと独自のアプリケーションで使用する暗号鍵を作成し、管理できます。Cloud KMS を使用すると、次のことができます。
ソフトウェアまたはハードウェアの鍵を生成するか、既存の鍵を Cloud KMS にインポートします。または、互換性のある外部鍵管理(EKM)システムで外部鍵をリンクします。
Google Cloud プロダクトで CMEK 統合を使用して、顧客管理の暗号鍵(CMEK)を使用します。CMEK 統合では、CMEK 鍵を使用してデータ暗号鍵(DEK)を暗号化または「ラップ」します。DEK を鍵暗号鍵(KEK)でラップすることは、エンベロープ暗号化と呼ばれます。
暗号化と復号のオペレーションには Cloud KMS 鍵を使用します。たとえば、Cloud KMS API またはクライアント ライブラリを使用してクライアント側の暗号化で Cloud KMS 鍵を使用できます。
Cloud KMS 鍵を使用して、デジタル署名またはメッセージ認証コード(MAC)署名を作成または検証します。
ニーズに合った暗号化を選択する
次の表で、各ユースケースのニーズに最適な暗号化タイプを特定できます。ニーズに最適なソリューションは、複数の暗号化方法の組み合わせである場合があります。たとえば、最も機密性の低いデータにはソフトウェア鍵を使用し、最も機密性の高いデータにはハードウェア鍵または外部鍵を使用することが考えられます。このセクションで説明する暗号化オプションの詳細については、このページの Google Cloud でのデータの保護をご覧ください。
暗号化のタイプ | コスト | 互換性のあるサービス | 機能 |
---|---|---|---|
Google Cloud のデフォルトの暗号化 | 含まれています | 顧客データを保存するすべての Google Cloud サービス |
|
顧客管理の暗号鍵 - ソフトウェア (Cloud KMS 鍵) |
低 - 鍵バージョンあたり $0.06 | 30 種類以上のサービス |
|
顧客管理の暗号鍵 - ハードウェア (Cloud HSM 鍵) |
中: 鍵バージョンあたり月額 $1.00~$2.50 | 30 種類以上のサービス |
|
顧客管理の暗号鍵 - 外部 (Cloud EKM 鍵) |
高 - 鍵バージョンごとに月額 $3.00 | 20 種類以上のサービス |
|
Cloud KMS 鍵を使用したクライアントサイド暗号化 | アクティブな鍵バージョンのコストは、鍵の保護レベルによって異なります。 | アプリケーションでクライアント ライブラリを使用する |
|
顧客指定の暗号鍵 | Compute Engine または Cloud Storage に関連する費用が増える場合があります |
|
|
Confidential Computing | Confidential VMs ごとの追加費用。ログ使用量と関連費用が増加する可能性があります |
|
Google Cloud でのデータの保護
Google Cloud のデフォルトの暗号化
デフォルトでは、Google Cloud の保存データは、Google の内部鍵管理サービスであるキーストアの鍵によって保護されます。キーストアの鍵は Google によって自動的に管理されるため、ユーザーによる構成は不要です。ほとんどのサービスでは、鍵は自動的にローテーションされます。キーストアは、メインの鍵バージョンと一部の古い鍵バージョンをサポートしています。メインの鍵バージョンは、新しいデータ暗号鍵の暗号化に使用されます。古い鍵バージョンを使用して、既存のデータ暗号鍵を復号することもできます。
このデフォルトの暗号化では、FIPS 140-2 レベル 1 に準拠していることが検証された暗号モジュールが使用されます。より高いレベルの保護に関する特定の要件がない場合、デフォルトの暗号化を使用すると、追加コストなしでニーズに対応できます。
顧客管理の暗号鍵(CMEK)
より高いレベルの制御または保護が必要なユースケースでは、互換性のあるサービスで顧客管理の暗号鍵を使用できます。CMEK 統合で Cloud KMS 鍵を使用する場合、組織のポリシーを使用して、ポリシーの指定に従って CMEK 鍵が使用されるようにできます。たとえば、互換性のある Google Cloud リソースが Cloud KMS 鍵を暗号化に使用するように組織のポリシーを設定できます。組織のポリシーでは、鍵リソースが存在するプロジェクトを指定することもできます。
提供される機能と保護レベルは、鍵の保護レベルによって異なります。
ソフトウェア鍵 - Cloud KMS でソフトウェア鍵を生成し、すべての Google Cloud のロケーションで使用できます。自動ローテーションでは対称鍵、手動ローテーションでは非対称鍵を作成できます。顧客管理のソフトウェア鍵は、FIPS 140-2 レベル 1 検証済みのソフトウェア暗号モジュールを使用します。また、ローテーション期間、Identity and Access Management(IAM)のロールと権限、鍵を管理する組織のポリシーも制御できます。30 個を超える互換性のある Google Cloud リソースでソフトウェア鍵を使用できます。
インポートされたソフトウェア鍵 - Cloud KMS で使用するために別の場所で作成したソフトウェア鍵をインポートできます。新しい鍵バージョンをインポートして、インポートした鍵を手動でローテーションできます。IAM のロールと権限、組織のポリシーを使用して、インポートした鍵の使用を管理できます。
ハードウェア鍵と Cloud HSM - FIPS 140-2 レベル 3 ハードウェア セキュリティ モジュール(HSM)のクラスタでハードウェア鍵を生成できます。ユーザーは、ローテーション期間、IAM のロールと権限、鍵を管理する組織のポリシーを制御できます。Cloud HSM を使用して HSM 鍵を作成すると、HSM クラスタが Google によって管理されるため、ユーザーが管理する必要はありません。HSM 鍵は、30 を超える互換性のある Google Cloud リソース(ソフトウェア鍵をサポートする同じサービス)で使用できます。最高レベルのセキュリティ コンプライアンスを実現するには、ハードウェア鍵を使用します。
外部鍵と Cloud EKM - 外部鍵マネージャー(EKM)にある鍵を使用できます。Cloud EKM では、サポートされる鍵マネージャー内の鍵を使用して、Google Cloud リソースを保護できます。EKM には、インターネット経由または Virtual Private Cloud(VPC)経由で接続できます。ソフトウェア鍵またはハードウェア鍵をサポートする一部の Google Cloud サービスは、Cloud EKM 鍵をサポートしていません。
Cloud KMS キー
カスタム アプリケーションでは、Cloud KMS クライアント ライブラリまたは Cloud KMS API を使用して Cloud KMS 鍵を使用できます。クライアント ライブラリと API を使用すると、データの暗号化と復号、データの署名、署名の検証を行うことができます。
顧客指定の暗号鍵(CSEK)
Cloud Storage と Compute Engine は、顧客指定の暗号鍵(CSEK)を使用できます。顧客指定の暗号鍵を使用して、鍵マテリアルを保存し、必要に応じて Cloud Storage または Compute Engine に提供します。Google では、CSEK を保存することはありません。
Confidential Computing
Compute Engine、GKE、Dataproc では、Confidential Computing プラットフォームを使用して使用中のデータを暗号化できます。Confidential Computing により、処理中であっても、データの機密性と暗号化が確保されます。