AWS CloudHSM クライアントキーの耐久性設定を変更する
キーの同期は主に自動プロセスですが、クライアント側のキーの耐久性設定を管理できます。クライアント側のキーの耐久性設定は、クライアント SDK 5 とクライアント SDK 3 では異なる動作をします。
-
クライアント SDK 5 では、最低 2 つの HSM を用いてクラスターを実行することを求める key availability quorums のコンセプトを紹介します。クライアント側のキーの耐久性設定を使用して、2 つの HSM 要件をオプトアウトできます。quorums のさらなる詳細については、クライアント SDK 5 の概念 を参照してください。
-
クライアント SDK 3 では、クライアント側のキーの耐久性設定を使用して、オペレーション全体を成功と見なすためにキーの作成を成功させる必要がある HSM の数を指定します。
クライアント SDK 5 では、キーの同期は完全自動プロセスです。キー可用性クォーラムを用いて、アプリケーションがキーを使用できるようになる前に、新しく作成されたキーがクラスター内の 2 つの HSM 上に存在している必要があります。キーの可用性クォーラムを使用するには、クラスターに最低 2 つの HSM が必要です。
クラスター構成がキーの耐久性要件を満たしていない場合、トークンキーを作成または使用しようとすると、ログに次のエラーメッセージが表示されて失敗します。
Key <key handle>
does not meet the availability requirements - The key must be available on at least 2 HSMs before being used.
クライアント構成設定を使用して、キーの可用性クォーラムをオプトアウトできます。たとえば、単一の HSM を用いてクラスターの実行をオプトアウトしたい場合があります。
クライアント SDK 5 の概念
- Key Availability Quorum
-
AWS CloudHSM は、その上でアプリケーションがキーを使用できるようにする前に、キーが存在する必要があるクラスター内の HSM の数を指定します。最低 2 つの HSM を持つクラスターが必要です。
クライアントキーの耐久性設定の管理
クライアントキーの耐久性設定を管理するには、クライアント SDK 5 用の構成ツールを使用する必要があります。
[クライアント SDK 3] では、キーの同期は主に自動プロセスですが、クライアントキーの耐久性設定を使用してキーの耐久性を高めることができます。オペレーション全体を成功と見なすためにキーの作成を引き継ぐ必要がある HSM の数を指定します。クライアント側の同期では、選択した設定に関係なく、クラスター内のすべての HSM にキーのクローンするために、ベストエフォートの試行を行います。この設定では、指定した HSM の数の上にキーの作成が強制されます。値を指定し、システムがその数の HSM にキーをレプリケートできない場合、不要なキーマテリアルは自動的にクリーンアップされ、再試行できます。
重要
クライアントキーの耐久性設定を設定しない場合 (またはデフォルト値の 1 を使用する場合)、キーが失われる恐れがあります。サーバーサイドサービスがそのキーを別の HSM に複製する前に現在の HSM に障害が発生した場合、キーマテリアルは失われます。
キーの耐久性を最大化するには、クライアント側の同期のために少なくとも 2 つの HSM を指定することを検討してください。HSM をいくつ指定しても、クラスター上のワークロードは変わりません。クライアント側の同期では、クラスター内のすべての HSM に対して常にベストエフォート型のキーのクローンが試行されます。
推奨事項
-
Minimum: クラスターあたり 2 つの HSM
-
Maximum: クラスター内の HSM の総数より 1 少ない
クライアント側の同期に失敗すると、クライアントサービスは作成された可能性があり、不要になった可能性のある不要なキーをクリーンアップします。このクリーンアップは、常に機能するとは限らないベストエフォート対応です。クリーンアップが失敗した場合は、不要なキーマテリアルを削除する必要があります。さらなる詳細については、Key Synchronization Failures を参照してください。
クライアントキーの耐久性のための設定ファイルの設定
クライアントキーの耐久性設定を指定するには、cloudhsm_client.cfg
を編集します。
クライアント設定ファイルを編集するには
-
cloudhsm_client.cfg
を開きます。Linux :
/opt/cloudhsm/etc/
cloudhsm_client.cfg
Windows :
C:\ProgramData\Amazon\CloudHSM\data\
cloudhsm_client.cfg
-
ファイルの
client
のノードの中で、create_object_minimum_nodes
を追加して、キー作成オペレーションを成功させるために AWS CloudHSM がその上にキーを正常に作成させる必要がある HSM の最小数の値を指定します。"create_object_minimum_nodes" :
2
注記
[key_mgmt_util (KMU)]コマンドラインツール]には、クライアントキーの耐久性の追加設定があります。詳細については、KMU とクライアント側の同期 を参照してください。
設定リファレンス
これらは、cloudhsm_client.cfg
の抜粋中に示されるクライアント側の同期プロパティです:
{
"client": {
"create_object_minimum_nodes" : 2
,
...
},
...
}
- create_object_minimum_nodes
-
キーの生成、キーのインポート、またはキーアンラップ操作が成功したと見なすために必要な HSM の最小数を指定します。設定されると、デフォルトは、[1] になります。つまり、キーがオペレーション作成するたびに、クライアント側のサービスはクラスター内のすべての HSM でキーを作成しようとしますが、成功を返すためには、クラスター内の HSM 上で single key の生成を必要とするだけです。
KMU とクライアント側の同期
[key_mgmt_util (KMU)] コマンドラインツールを使用してキーを作成する場合は、オプションのコマンドラインパラメータ (-min_srv
) を使って、キーのクローンを作成する HSM の数を limit します。構成ファイルでコマンドラインパラメータ および 値を指定すると、AWS CloudHSM は 2 つの値のうち大きいほうを優先します。
詳細については、以下の各トピックを参照してください。