外部鍵を作成する

このページでは、Cloud Key Management Service(Cloud KMS)の既存のキーリングに Cloud External Key Manager(Cloud EKM)鍵を作成する方法について説明します。

始める前に

このページで説明するタスクの前に、次のことを行っておく必要があります。

  • Cloud KMS リソースを格納する Google Cloud プロジェクトのリソース。他の Google Cloud リソースを含まない Cloud KMS リソースには、別のプロジェクトを使用することをおすすめします。

    プロジェクトの Cloud EKM サービス アカウントをメモしておきます。次の例では、PROJECT_NUMBER を Google Cloud プロジェクトのプロジェクト番号に置き換えます。この情報は、Google Cloud コンソールを使用して Cloud EKM 鍵を作成するたびに表示されます。

    service-PROJECT_NUMBER@gcp-sa-ekms.iam.gserviceaccount.com
    
  • 鍵を作成するキーリングの名前と場所。 他のリソースに近い、Cloud EKM をサポートするロケーションのキーリングを選択します。使用可能なロケーションとサポートされる保護レベルを確認するには、Cloud KMS のロケーションをご覧ください。キーリングの作成については、キーリングの作成をご覧ください。

  • 手動で管理する外部鍵を作成するには、外部鍵管理パートナー システムで鍵を作成する必要があります。正確な手順は、外部鍵管理パートナーによって異なります。

    1. 必要に応じて、参加する外部鍵管理パートナーのアクセス権限を要請してください。

    2. 外部鍵管理パートナー システムで対称鍵または非対称鍵を作成するか、既存の鍵を選択します。

      Cloud EKM 鍵に使用する Google Cloud リージョンに近いリージョンに鍵を作成します。これにより、Google Cloud プロジェクトと外部鍵管理パートナーの間のネットワーク レイテンシが短縮されます。そうしないと、失敗オペレーションの数が増加する場合があります。 詳細については、Cloud EKM とリージョンをご覧ください。

    3. 外部鍵の URI または鍵のパスをメモしておきます。この情報は、Cloud EKM 鍵を作成するために必要です。

  • 外部鍵管理パートナー システムで、外部鍵を使用するためのアクセス権を Google Cloud サービス アカウントに付与します。サービス アカウントをメールアドレスとして扱います。EKM パートナーはこのトピックとは異なる用語を使用できます。

  • VPC キーを使用して EKM を作成するには、VPC 接続を介して EKM を作成する必要があります。

  • 省略可: gcloud CLI を使用するには、環境を準備します。

    gcloud CLI

    In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

必要なロール

鍵の作成に必要な権限を取得するには、プロジェクトまたは親リソースの Cloud KMS 管理者roles/cloudkms.admin)IAM ロールの付与を管理者に依頼してください。ロールの付与の詳細については、アクセスの管理をご覧ください。

この事前定義ロールには、鍵の作成に必要な権限が含まれています。必要な権限を正確に確認するには、[必要な権限] セクションを開いてください。

必要な権限

鍵を作成するには、次の権限が必要です。

  • cloudkms.cryptoKeys.create
  • cloudkms.cryptoKeys.get
  • cloudkms.cryptoKeys.list
  • cloudkms.cryptoKeyVersions.create
  • cloudkms.cryptoKeyVersions.get
  • cloudkms.cryptoKeyVersions.list
  • cloudkms.keyRings.get
  • cloudkms.keyRings.list
  • cloudkms.locations.get
  • cloudkms.locations.list
  • resourcemanager.projects.get
  • 公開鍵を取得するには: cloudkms.cryptoKeyVersions.viewPublicKey

カスタムロールや他の事前定義ロールを使用して、これらの権限を取得することもできます。

調整された外部鍵を作成する

コンソール

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

    Key Management に移動

  2. 鍵を作成するキーリングの名前をクリックします。

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

  4. [鍵名] に鍵の名前を入力します。

  5. [保護レベル] で [外部] を選択します。

  6. [外部鍵マネージャー(EKM)接続タイプ] で [VPC 経由] を選択します。

  7. [VPC 接続を介した EKM] で接続を選択します。

    EkmConnection.list 権限がない場合は、接続リソース名を手動で入力する必要があります。

  8. [続行] をクリックします。

  9. [鍵マテリアル] セクションに、Cloud KMS によってリクエストされ、EKM で生成された新しい鍵マテリアルに関するメッセージが表示されます。 [鍵のパス] フィールドが表示された場合は、選択した VPC 接続を介した EKM が、調整された外部鍵用に構成されていません。

  10. 必要に応じて残りの鍵設定を構成してから、[作成] をクリックします。

Cloud EKM は、新しい鍵を作成するためのリクエストを EKM に送信します。EKM から鍵のパスが返され、Cloud EKM 鍵が使用可能になるまで、鍵は [生成を保留中] と表示されます。

gcloud

コマンドラインで Cloud KMS を使用するには、まず Google Cloud CLI の最新バージョンをインストールまたはアップグレードします

gcloud kms keys create KEY_NAME \
    --keyring KEY_RING \
    --location LOCATION \
    --purpose PURPOSE \
    --default-algorithm ALGORITHM \
    --protection-level "external-vpc" \
    --crypto-key-backend VPC_CONNECTION_RESOURCE_ID

以下を置き換えます。

  • KEY_NAME: 鍵の名前
  • KEY_RING: 鍵を含むキーリングの名前
  • LOCATION: キーリングの Cloud KMS のロケーション
  • PURPOSE: 鍵の目的
  • ALGORITHM: 鍵に使用するアルゴリズム(例: google-symmetric-encryption)。サポートされているアルゴリズムについては、アルゴリズムをご覧ください。
  • VPC_CONNECTION_RESOURCE_ID: EKM 接続のリソース ID。

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

VPC キーを使用して手動で管理する Cloud EKM を作成する

コンソール

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

    Key Management に移動

  2. 鍵を作成するキーリングの名前をクリックします。

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

  4. [鍵名] に鍵の名前を入力します。

  5. [保護レベル] で [外部] を選択します。

  6. [外部鍵マネージャー(EKM)接続タイプ] で [VPC 経由] を選択します。

  7. [VPC 接続を介した EKM] で接続を選択します。

    EkmConnection.list 権限がない場合は、接続リソース名を手動で入力する必要があります。

  8. [続行] をクリックします。

  9. [鍵のパス] フィールドに、外部鍵のパスを入力します。

  10. 必要に応じて残りの鍵設定を構成してから、[作成] をクリックします。

gcloud

コマンドラインで Cloud KMS を使用するには、まず Google Cloud CLI の最新バージョンをインストールまたはアップグレードします

gcloud kms keys create KEY_NAME \
    --keyring KEY_RING \
    --location LOCATION \
    --purpose PURPOSE \
    --default-algorithm ALGORITHM \
    --protection-level "external-vpc" \
    --skip-initial-version-creation \
    --crypto-key-backend VPC_CONNECTION_RESOURCE_ID

以下を置き換えます。

  • KEY_NAME: 鍵の名前
  • KEY_RING
  • LOCATION: キーリングの Cloud KMS のロケーション
  • PURPOSE: 鍵の目的
  • ALGORITHM: 鍵に使用するアルゴリズム(例: google-symmetric-encryption)。サポートされているアルゴリズムについては、アルゴリズムをご覧ください。
  • VPC_CONNECTION_RESOURCE_ID: EKM 接続のリソース ID。

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

インターネット鍵を使用して手動で管理する Cloud EKM を作成する

コンソール

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

    Key Management に移動

  2. 鍵を作成するキーリングの名前をクリックします。

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

  4. [鍵名] に鍵の名前を入力します。

  5. [保護レベル] で [外部] を選択します。

  6. [外部鍵マネージャー(EKM)接続タイプ] で [インターネット経由] を選択します。

  7. [続行] をクリックします。

  8. [鍵のパス] フィールドに、外部鍵のパスを入力します。

  9. 必要に応じて残りの鍵設定を構成してから、[作成] をクリックします。

gcloud

コマンドラインで Cloud KMS を使用するには、まず Google Cloud CLI の最新バージョンをインストールまたはアップグレードします

  1. 空の外部鍵を作成します。

    gcloud kms keys create KEY_NAME \
      --keyring KEY_RING \
      --location LOCATION \
      --purpose PURPOSE \
      --protection-level external \
      --skip-initial-version-creation \
      --default-algorithm ALGORITHM
    

    以下を置き換えます。

    • KEY_NAME: 鍵の名前
    • KEY_RING: 鍵を含むキーリングの名前
    • LOCATION: キーリングの Cloud KMS のロケーション
    • PURPOSE: 鍵の目的
    • ALGORITHM: 鍵に使用するアルゴリズム(例: google-symmetric-encryption)。サポートされているアルゴリズムについては、アルゴリズムをご覧ください。

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

  2. 作成した鍵の鍵バージョンを作成します。

    gcloud kms keys versions create \
      --key KEY_NAME \
      --keyring KEY_RING \
      --location LOCATION \
      --external-key-uri EXTERNAL_KEY_URI
    

    EXTERNAL_KEY_URI は、外部鍵の URI に置き換えます。

    対称鍵バージョンの場合は、--primary フラグを追加して新しい鍵バージョンをメインのバージョンとして設定します。

次のステップ