AWS CloudHSM キーストアを作成する - AWS Key Management Service

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS CloudHSM キーストアを作成する

自分のアカウントには 1 つまたは複数の AWS CloudHSM キーストアを作成できます。各 AWS CloudHSM キーストアは、同じ AWS アカウント とリージョンにある 1 つの AWS CloudHSM クラスターに関連付けられます。AWS CloudHSM キーストアを作成するときは、事前に前提条件を構成する必要があります。次に、AWS CloudHSM キーストアを使用する前にそのキーストアを AWS CloudHSM クラスターに接続します。

メモ

接続が解除された既存の AWS CloudHSM キーストアと同じプロパティ値をすべて使って AWS CloudHSM キーストアを作成しようとすると、AWS KMS は、新しい AWS CloudHSM キーストアを作成せず、例外のスローやエラーの表示を行いません。代わりに AWS KMS は、この重複は再試行の結果である可能性が高いと認識し、既存の AWS CloudHSM キーストアの ID を返します。

AWS CloudHSM キーストアをただちに接続する必要はありません。使用する準備ができるまで切断された状態にしておくことができます。ただし、正しく設定されていることを確認するために、接続して、接続状態を表示してから、切断するとよいかも知れません。

前提条件を構成する

各 AWS CloudHSM キーストアは AWS CloudHSM クラスターにサポートされています。AWS CloudHSM キーストアを作成するには、別のキーストアに関連付けられていない、アクティブな AWS CloudHSM クラスターを指定する必要があります。AWS KMS がユーザーの代わりにキーを作成して管理できる、クラスターの HSM に専用 Crypto User (CU) を作成する必要もあります。

AWS CloudHSM キーストアを作成する前に、次の手順を実行します。

AWS CloudHSM クラスターを選択する

各 AWS CloudHSM キーストアは、AWS CloudHSM クラスターに 1 つずつ関連付けられます。ユーザーが AWS CloudHSM キーストア内に AWS KMS keys を作成すると、AWS KMS は、AWS KMS 内の ID や Amazon リソースネーム (ARN) などの KMS キーメタデータを作成します。その後で、関連付けられたクラスターの HSM でキーマテリアルを作成します。新しい AWS CloudHSM クラスターを作成するか、既存のものを使用できます。AWS KMS ではクラスターへの排他的アクセスが要求されません。

選択した AWS CloudHSM クラスターは、AWS CloudHSM キーストアに完全に関連付けられます。AWS CloudHSM キーストアを作成した後は、関連付けられたクラスターのクラスター ID を変更できますが、指定したクラスターは元のクラスターとバックアップ履歴を共有する必要があります。無関係のクラスターを使用するには、新しい AWS CloudHSM キーストアを作成する必要があります。

選択した AWS CloudHSM クラスターには次の特性が必要です。

  • クラスターがアクティブである必要があります

    クラスターを作成して初期化し、プラットフォームに AWS CloudHSM クライアントソフトウェアをインストールして、クラスターをアクティブ化する必要もあります。手順については、「AWS CloudHSM ユーザーガイド」の「AWS CloudHSM の開始方法」を参照してください。

  • クラスターは、AWS CloudHSM キーストアと同じアカウントおよびリージョンに存在する必要があります。あるリージョンの AWS CloudHSM キーストアを別のリージョンのクラスターに関連付けることはできません。マルチリージョンの主要なインフラストラクチャを作成するには、各リージョンに AWS CloudHSM キーストアとクラスターを作成する必要があります。

  • クラスターを同じアカウントおよびリージョン内の別のカスタムキーストアに関連付けることはできません。アカウントおよびリージョン内のそれぞれの AWS CloudHSM キーストアは、異なる AWS CloudHSM クラスターに関連付けられている必要があります。カスタムキーストアに関連付け済みのクラスターまたは関連付け済みのクラスターとバックアップ履歴を共有するクラスターを指定することはできません。バックアップ履歴を共有するクラスターには同じクラスター証明書があります。クラスターのクラスター証明書を表示するには、AWS CloudHSM コンソールまたは DescribeClusters オペレーションを使用します。

    AWS CloudHSM クラスターを別のリージョンにバックアップする場合、そのクラスターは別のクラスターと見なされ、そのリージョン内のカスタムキーストアにバックアップを関連付けることができます。ただし、2 つのカスタムキーストアの KMS キーは、同じバッキングキーを持っていても、相互運用できません。AWS KMS は、メタデータを暗号文にバインドし、暗号化した KMS キーによってのみ復号できるようにします。

  • クラスターは、リージョンの 2 つ以上のアベイラビリティーゾーンプライベートサブネットを使用して設定する必要があります。AWS CloudHSM はすべてのアベイラビリティーゾーンでサポートされていないため、リージョン内のすべてのアベイラビリティーゾーンでプライベートサブネットを作成することをお勧めします。既存のクラスターのサブネットを再構成することはできませんが、クラスター構成の異なるサブネットを持つバックアップからクラスターを作成することはできます。

    重要

    AWS CloudHSM キーストアを作成した後は、AWS CloudHSM クラスター用に設定されたプライベートサブネットを削除しないでください。AWS KMS がクラスター構成内ですべてのサブネットを見つけることができない場合、カスタムキーストアへの接続 を試みると、SUBNET_NOT_FOUND 接続エラー状態で失敗します。詳細については、「接続障害の修復方法」を参照してください。

  • クラスターのセキュリティグループ (cloudhsm-cluster-<cluster-id>-sg) には、ポート 2223~2225 で TCP トラフィックを許可するインバウンドルールとアウトバウンドルールを含める必要があります。インバウンドルールの Source とアウトバウンドルールの Destination は、セキュリティグループ ID と一致している必要があります。これらのルールは、クラスターの作成時にデフォルトで設定されます。変更または削除しないでください。

  • クラスターは、異なるアベイラビリティーゾーンの少なくとも 2 つのアクティブな HSM を含む必要があります。HSM の数を確認するには、AWS CloudHSM コンソールか DescribeClusters オペレーションを使用します。必要に応じて、HSM を追加できます。

信頼アンカー証明書を見つける

カスタムキーストアを作成する場合、AWS CloudHSM クラスターのトラストアンカー証明書を AWS KMS にアップロードする必要があります。AWS KMS には、AWS CloudHSM キーストアを関連付けられた AWS CloudHSM クラスターに接続するために、トラストアンカー証明書が必要です。

すべてのアクティブな AWS CloudHSM クラスターには信頼アンカー証明書があります。クラスターを初期化する際、この証明書を生成し、customerCA.crt ファイルに保存して、クラスターに接続するホストにコピーしてください。

AWS KMS 用の kmsuser Crypto User を作成する

AWS CloudHSM キーストアを管理するために、AWS KMS は、選択したクラスターで kmsuser Crypto User (CU) アカウントにログインします。AWS CloudHSM キーストアを作成する前に kmsuser CU を作成する必要があります。次に、AWS CloudHSM キーストアを作成するときに、kmsuser のパスワードを AWS KMS に指定します。AWS CloudHSM カスタムキーストアを関連付けられた AWS CloudHSM クラスターに接続すると、AWS KMS は kmsuser としてログインし、kmsuser パスワードをローテーションします。

重要

kmsuser CU を作成するとき、2FA オプションを指定しないでください。指定すると、AWS KMS はログインできず、AWS CloudHSM キーストアはこの AWS CloudHSM クラスターに接続できません。2FA を指定すると、元に戻すことはできません。代わりに、CU を削除して再作成する必要があります。

メモ

次の手順では、AWS CloudHSM Client SDK 5 コマンドラインツールである CloudHSM CLI を使用します。CloudHSM CLI は、key-handlekey-reference に置き換えます。

AWS CloudHSM は 2025 年 1 月 1 日を以て、Client SDK 3 コマンドラインツール、CloudHSM 管理ユーティリティ (CMU)、およびキー管理ユーティリティ (KMU) のサポートを終了します。Client SDK 3 コマンドラインツールと Client SDK 5 コマンドラインツールの違いの詳細については、「AWS CloudHSM ユーザーガイド」の「Client SDK 3 CMU および KMU から Client SDK 5 CloudHSM CLI への移行」を参照してください。

  1. AWS CloudHSM ユーザーガイド」の「CloudHSM コマンドラインインターフェイス (CLI) の使用開始」トピックに記載されている使用開始手順に従ってください。

  2. [user create] コマンドを使用して、kmsuser という名前の CU を作成します。

    パスワードは 7〜32 の英数字で構成する必要があります。大文字と小文字が区別され、特殊文字を含めることはできません。

    次のコマンド例では、kmsuser CU を作成します。

    aws-cloudhsm > user create --username kmsuser --role crypto-user Enter password: Confirm password: { "error_code": 0, "data": { "username": "kmsuser", "role": "crypto-user" } }

新しい AWS CloudHSM キーストアを作成する

前提条件の構築後、AWS KMS コンソールで、または CreateCustomKeyStore オペレーションを使用して新しい AWS CloudHSM キーストアを作成できます。

AWS Management Console で AWS CloudHSM キーストアを作成するときに、ワークフローの一部として前提条件を追加および作成することができます。ただし、プロセスは事前に構成しておくとより迅速になります。

  1. AWS Management Console にサインインし、AWS Key Management Service (AWS KMS) コンソール (https://console.aws.amazon.com/kms) を開きます。

  2. AWS リージョン を変更するには、ページの右上隅にあるリージョンセレクターを使用します。

  3. ナビゲーションペインで、[カスタムキーストア][AWS CloudHSM キーストア] の順に選択します。

  4. [キーストアの作成] を選択します。

  5. カスタムキーストアのわかりやすい名前を入力します。名前は、アカウント内のすべてのカスタムキーストアの間で、一意でなければなりません。

    重要

    このフィールドには、機密情報や重要情報を含めないでください。このフィールドは、CloudTrail ログやその他の出力にプレーンテキストで表示される場合があります。

  6. AWS CloudHSM キーストアの AWS CloudHSM クラスターを選択します。または、新しい AWS CloudHSM クラスターを作成するには、AWS CloudHSM クラスターの作成リンクを選択します。

    メニューに、AWS CloudHSM キーストアにまだ関連付けられていないアカウントおよびリージョンの AWS CloudHSM キーストアが表示されます。クラスターは、カスタムキーストアとの関連付けの要件を満たす必要があります。

  7. [Choose file] (ファイルを選択) を選択し、選択した AWS CloudHSM クラスターのトラストアンカー証明書をアップロードします。これは、クラスターを初期化する際に作成した customerCA.crt ファイルです。

  8. 選択したクラスターで作成した kmsuser Crypto User (CU) のパスワードを入力します。

  9. [Create] (作成) を選択します。

手順が完了すると、アカウントとリージョンの AWS CloudHSM キーストアのリストに新しい AWS CloudHSM キーストアが表示されます。正常に完了しなかった場合は、問題を説明し、修正方法を示すエラーメッセージが表示されます。さらにヘルプが必要な場合は、「カスタムキーストアのトラブルシューティング」を参照してください。

接続が解除された既存の AWS CloudHSM キーストアと同じプロパティ値をすべて使って AWS CloudHSM キーストアを作成しようとすると、AWS KMS は、新しい AWS CloudHSM キーストアを作成せず、例外のスローやエラーの表示を行いません。代わりに AWS KMS は、この重複は再試行の結果である可能性が高いと認識し、既存の AWS CloudHSM キーストアの ID を返します。

次の手順: 新しい AWS CloudHSM キーストアが自動的に接続されない。AWS CloudHSM カスタムキーストアで AWS KMS keys を作成する前に、関連付けられた AWS CloudHSM クラスターにカスタムキーストアを接続する必要があります。

CreateCustomKeyStore オペレーションを使用すれば、AWS CloudHSM クラスターに関連付けられた新しい AWS CloudHSM キーストアをアカウントとリージョンに作成できます。これらの例では AWS Command Line Interface (AWS CLI) を使用しますが、サポートされている任意のプログラミング言語を使用できます。

CreateCustomKeyStore オペレーションでは、次のパラメータ値が必要です。

  • CustomKeystorename — アカウント内で一意のカスタムキーストアのフレンドリ名。

    重要

    このフィールドには、機密情報や重要情報を含めないでください。このフィールドは、CloudTrail ログやその他の出力にプレーンテキストで表示される場合があります。

  • CloudHsmClusterId — AWS CloudHSM キーストアの要件を満たす AWS CloudHSM クラスターのクラスター ID。

  • KeyStorePassword — 指定したクラスター内の kmsuser CU アカウントのパスワード。

  • TrustAnchorCertificate — クラスターを初期化した際に作成した customerCA.crt ファイルの内容。

次の例では、架空のクラスター ID を使用します。コマンドを実行する前に、有効なクラスター ID と置き換えます。

$ aws kms create-custom-key-store --custom-key-store-name ExampleCloudHSMKeyStore \ --cloud-hsm-cluster-id cluster-1a23b4cdefg \ --key-store-password kmsPswd \ --trust-anchor-certificate <certificate-goes-here>

AWS CLI を使用している場合、その内容ではなく、信頼アンカー証明書ファイルを指定できます。次の例では、customerCA.crt ファイルはルートディレクトリにあります。

$ aws kms create-custom-key-store --custom-key-store-name ExampleCloudHSMKeyStore \ --cloud-hsm-cluster-id cluster-1a23b4cdefg \ --key-store-password kmsPswd \ --trust-anchor-certificate file://customerCA.crt

オペレーションが正常に終了したら、次のレスポンス例に示すように、CreateCustomKeyStore はカスタムキーストア ID を返します。

{ "CustomKeyStoreId": cks-1234567890abcdef0 }

オペレーションが失敗した場合は、例外で示されているエラーを修正して、もう一度試してください。その他のヘルプについては、「カスタムキーストアのトラブルシューティング」を参照してください。

接続が解除された既存の AWS CloudHSM キーストアと同じプロパティ値をすべて使って AWS CloudHSM キーストアを作成しようとすると、AWS KMS は、新しい AWS CloudHSM キーストアを作成せず、例外のスローやエラーの表示を行いません。代わりに AWS KMS は、この重複は再試行の結果である可能性が高いと認識し、既存の AWS CloudHSM キーストアの ID を返します。

次の手順: AWS CloudHSM キーストアを使用するには、これを AWS CloudHSM クラスターに接続します