

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

# AWS CloudHSM キー管理のベストプラクティス
<a name="bp-hsm-key-management"></a>

 AWS CloudHSMでキーを管理する場合は、このセクションのベストプラクティスに従います。

## 適切なキーのタイプを選択する
<a name="bp-choose-the-right-key"></a>

セッションキーを使用する場合、1 秒あたりのトランザクション数 (TPS) は、そのキーが存在する 1 つの HSM に制限されます。クラスターに HSM を追加しても、そのキーのリクエストのスループットは向上しません。同じアプリケーションにトークンキーを使用すると、リクエストはクラスター内の利用可能なすべての HSM に負荷分散されます。詳細については、「[でのキー同期と耐久性の設定 AWS CloudHSM](manage-key-sync.md)」を参照してください。

## キーのストレージ制限を管理する
<a name="bp-key-storage-limits"></a>

HSM には、HSM に一度に保存できるトークンとセッションキーの最大数に制限があります。キーストレージの制限に関する詳細は、「[AWS CloudHSM クォータ](limits.md)」を参照してください。アプリケーションが制限を超えるものを必要とする場合は、次の 1 つまたは複数の方法を使用してキーを効果的に管理できます。

**トラステッドラッピングを使用してキーを外部データストアに保存する**:トラステッドキーラッピングを使用すると、ラップされたすべてのキーを外部データストア内に保存することで、キーストレージの制限を回避できます。このキーを使用する必要がある場合は、キーをセッションキーとして HSM にアンラップし、そのキーを必要なオペレーションに使用してからセッションキーを破棄できます。元のキーデータはデータストアに安全に保存され、必要なときにいつでも使用できます。そのために信頼できるキーを使用することで、最大限の保護が可能になります。

**キーをクラスターに分散する**: キーストレージの制限を克服するためのもう 1 つの方法は、キーを複数のクラスターに保存することです。このアプローチでは、各クラスターに保存されているキーのマッピングを維持します。このマッピングを使用して、必要なキーを含むクライアントリクエストをクラスターにルーティングします。同じクライアントアプリケーションから複数のクラスターに接続する方法の詳細については、以下のトピックを参照してください。
+ [JCE プロバイダーを使用した複数の AWS CloudHSM クラスターへの接続](java-lib-configs-multi.md)
+ [用の PKCS \$111 ライブラリを使用した複数のスロット設定 AWS CloudHSM](pkcs11-library-configs-multi-slot.md)

## キーラッピングの管理と保護
<a name="best-practices-key-protection"></a>

キーには、`EXTRACTABLE` 属性によって抽出可能または抽出不可のマークが付けられます。デフォルトでは、HSM キーは抽出可能とマークされています。

抽出可能なキーとは、キーラッピングによって HSM からエクスポートできるキーのことです。ラップされたキーは暗号化されるため、使用する前に同じラップキーを使用してラップを解除する必要があります。抽出不可能なキーは、いかなる状況においても HSM からエクスポートすることはできません。抽出不可能なキーを抽出可能にする方法はありません。このため、キーを抽出可能にする必要があるかどうかを検討し、それに応じて対応するキー属性を設定することが重要です。

アプリケーションでキーラッピングが必要な場合は、信頼できるキーラッピングを利用して、管理者によって明示的に信頼できるとマークされたキーのみを HSM ユーザーがラップ/アンラップできるように制限する必要があります。詳細については、[のキー AWS CloudHSM](manage-keys.md) の「信頼できるキーラッピングに関するトピック」を参照してください。

関連リソース
+ [ラップ関数とアンラップ関数](pkcs11-mechanisms.md#pkcs11-mech-function-wrap-unwrap)
+ [JCE の暗号関数](java-lib-supported_5.md#java-ciphers_5)
+ [AWS CloudHSM クライアント SDK 5 でサポートされている Java キー属性](java-lib-attributes_5.md)
+ [CloudHSM CLI のキー属性](cloudhsm_cli-key-attributes.md)