Cloud HSM

このドキュメントでは、Cloud HSM の概要と、HSM で保護された暗号鍵を Cloud Key Management Service で作成および使用する方法を説明します。

Cloud HSM とは

Cloud HSM は、FIPS 140-2 レベル 3 認定 HSM のクラスタで暗号鍵のホスティングや暗号オペレーションを実行できるようにする、クラウドでホストされたハードウェア セキュリティ モジュール(HSM)サービスです。HSM クラスタは Google によって管理されるため、クラスタリング、スケーリング、パッチ適用などについて心配する必要はありません。Cloud HSM は Cloud KMS をフロントエンドとして使用するため、Cloud KMS によって提供されるすべての利便性と機能を活用できます。

キーリングの作成

鍵を作成するときは、その鍵を指定された Google Cloudロケーションのキーリングに追加します。キーリングは新しく作成するか、既存のものを使用できます。ここでは、鍵リングを新規作成して、新しい鍵をそこに追加します。

Cloud HSM をサポートする Google Cloud ロケーションに鍵リングを作成します。

コンソール

  1. Google Cloud コンソールで、[鍵管理] ページに移動します。

    Key Management に移動

  2. [キーリングを作成] をクリックします。

  3. [キーリング名] にキーリングの名前を入力します。

  4. [キーリングのロケーション] で、"us-east1" などのロケーションを選択します。

  5. [作成] をクリックします。

gcloud

  1. Google Cloud コンソールで Cloud Shell をアクティブにします。

    Cloud Shell をアクティブにする

  2. 開発環境で、gcloud kms keyrings create コマンドを実行します。

    gcloud kms keyrings create KEY_RING \
        --location LOCATION
    

    以下を置き換えます。

    • KEY_RING: 鍵を含むキーリングの名前
    • LOCATION: キーリングの Cloud KMS のロケーション

    すべてのフラグと有効な値については、--help フラグを指定してコマンドを実行してください。

C#

このコードを実行するには、まず C# 開発環境を設定し、Cloud KMS C# SDK をインストールします。


using Google.Api.Gax.ResourceNames;
using Google.Cloud.Kms.V1;

public class CreateKeyRingSample
{
    public KeyRing CreateKeyRing(
      string projectId = "my-project", string locationId = "us-east1",
      string id = "my-key-ring")
    {
        // Create the client.
        KeyManagementServiceClient client = KeyManagementServiceClient.Create();

        // Build the parent location name.
        LocationName locationName = new LocationName(projectId, locationId);

        // Build the key ring.
        KeyRing keyRing = new KeyRing { };

        // Call the API.
        KeyRing result = client.CreateKeyRing(locationName, id, keyRing);

        // Return the result.
        return result;
    }
}

Go

このコードを実行するには、まず Go 開発環境を設定し、Cloud KMS Go SDK をインストールします。

import (
	"context"
	"fmt"
	"io"

	kms "cloud.google.com/go/kms/apiv1"
	"cloud.google.com/go/kms/apiv1/kmspb"
)

// createKeyRing creates a new ring to store keys on KMS.
func createKeyRing(