HSM 資格情報の管理 managing-hsm-credentials
Trust Store の管理ページから、ハードウェアセキュリティモジュール(HSM)秘密鍵証明書を管理できます。HSM はサードパーティの PKCS#11 デバイスです。これを使用して、秘密鍵を安全に生成および保存することができます。この HSM によって、秘密鍵へのアクセスおよびその使用が物理的に保護されます。
クライアントソフトウェアは、HSM と通信する必要があります。HSM クライアントソフトウェアは、AEM Forms と同じコンピューターにインストールして設定する必要があります。
AEM forms の Digital Signatures では、HSM に保存されている秘密鍵証明書を使用して、サーバー側の電子署名を適用することができます。この節の手順に従って、Digital Signatures で使用する HSM 秘密鍵証明書ごとにエイリアスを作成します。エイリアスには、HSM で必要なすべてのパラメーターが含まれます。
HSM デバイスがオンラインである場合の HSM 秘密鍵証明書のエイリアスの作成 create-an-alias-for-an-hsm-credential-when-the-hsm-device-is-online
-
管理コンソールで、設定/Trust Store の管理/HSM 秘密鍵証明書をクリックし、「追加」をクリックします。
-
「プロファイル名」ボックスに、エイリアスの識別に使用する文字列を入力します。この値は、署名フィールドへの署名操作といった、Digital Signatures の一部の操作でプロパティとして使用されます。
-
「PKCS11 ライブラリ」ボックスに、サーバーの HSM クライアントライブラリの完全修飾パスを入力します。例えば、
c:\Program Files\LunaSA\cryptoki.dll
のようになります。クラスター環境では、クラスター内のすべてのサーバーでこのパスが同じである必要があります。 -
「HSM の接続性をテスト」をクリックします。AEM Forms が HSM デバイスに接続できる場合は、HSM が使用可能であることを示すメッセージが表示されます。「次へ」をクリックします。
-
「トークン名」、「スロット Id」、「スロットリストのインデックス」のいずれかを使用して、HSM 上で秘密鍵証明書が保存されている場所を識別します。
- トークン名: 使用する HSM パーティションの名前(HSMPART1 など)に相当します。
- スロット ID: スロット ID は、データタイプが long であるスロットの識別子です。
- スロットリストのインデックス:「スロットリストのインデックス」を選択した場合、「スロット情報」にはスロットに相当する整数を設定します。スロットリストのインデックスは 0 ベースのインデックスです。つまり、クライアントの最初の登録が HSMPART1 パーティションの場合、HSMPART1 は SlotListIndex 値「0」で参照されます。
-
「トークン PIN」ボックスに、HSM キーにアクセスするために必要なパスワードを入力し、「次へ」をクリックします。
-
「秘密鍵証明書」ボックスで、秘密鍵証明書を選択します。「保存」をクリックします。
HSM デバイスがオフラインである場合の HSM 秘密鍵証明書のエイリアスの作成 create-an-alias-for-an-hsm-credential-when-the-hsm-device-is-offline
-
管理コンソールで、設定/Trust Store の管理/HSM 秘密鍵証明書をクリックし、「追加」をクリックします。
-
「プロファイル名」ボックスに、エイリアスの識別に使用する文字列を入力します。この値は、署名フィールドへの署名操作といった、Digital Signatures の一部の操作でプロパティとして使用されます。
-
「PKCS11 ライブラリ」ボックスに、サーバーの HSM クライアントライブラリの完全修飾パスを入力します。例えば、
c:\Program Files\LunaSA\cryptoki.dll
のようになります。クラスター環境では、クラスター内のすべてのサーバーでこのパスが同じである必要があります。 -
「オフラインプロファイルの作成」チェックボックスをオンにします。「次へ」をクリックします。
-
「HSM デバイス」リストから、秘密鍵証明書が保存されている HSM デバイスの製造元を選択します。
-
「スロットタイプ」リストで、「スロット ID」、「スロットインデックス」または「トークン名」を選択し、「スロット情報」ボックスで値を指定します。AEM Forms では、これらの設定を使用して、HSM 上の秘密鍵証明書の場所が特定されます。
-
トークン名: パーティション名に相当します(「HSMPART1」など)。
-
スロット ID: スロット ID は、スロットに相当する整数で、同様にパーティションにも相当します。例えば、クライアント(Forms サーバー)が最初に HSMPART1 パーティションを登録したとします。この場合、スロット 1 がこのクライアントの HSMPART1 パーティションにマップされます。HSMPART1 は最初に登録されたパーティションなので、スロット ID は 1 となります。このため、「スロット情報」には 1 を設定します。
スロット ID は、クライアントごとに設定されます。2 番目のマシンを別のパーティション(同じ HSM デバイスの HSMPART2 など)に登録すると、スロット 1 はこのクライアントの HSMPART2 パーティションに関連付けられます。
-
スロットインデックス: スロットインデックスを選択した場合、「スロット情報」にはスロットに相当する整数を設定します。これは 0 ベースのインデックスです。つまり、クライアントが最初に HSMPART1 パーティションを登録した場合、スロット 1 はこのクライアントの HSMPART1 にマップされます。HSMPART1 は最初に登録されたパーティションなので、スロットインデックスは 0 となります。
-
-
次のいずれかのオプションを選択し、パスを指定します。
- 証明書:(SHA1 を使用している場合は不要)「参照」をクリックし、使用する秘密鍵証明書の公開鍵へのパスに移動します。
- 証明書 SHA1:(物理証明書を使用している場合は不要)使用する秘密鍵証明書の公開鍵(.cer)ファイルの SHA1 値(拇印)を入力します。SHA1 値にスペースが使用されていないことを確認します。
-
「パスワード」ボックスに、指定したスロット情報の HSM キーにアクセスするために必要なパスワードを入力し、「保存」をクリックします。
HSM 秘密鍵証明書エイリアスのプロパティの表示 view-hsm-credential-alias-properties
- 管理コンソールで、設定/Trust Store の管理/HSM 秘密鍵証明書をクリックします。
- プロパティを表示する秘密鍵証明書エイリアスのエイリアス名をクリックし、「OK」をクリックします。
HSM 秘密鍵証明書のステータスの確認 check-the-status-of-an-hsm-credential
- 管理コンソールで、設定/Trust Store の管理/HSM 秘密鍵証明書をクリックします。
- 確認する秘密鍵証明書の横にあるチェックボックスをオンにし、「ステータスを確認」をクリックします。
「ステータス」列に、秘密鍵証明書の現在のステータスが反映されます。エラーが発生した場合は、「ステータス」列に赤の X が表示されます。X の上にマウスを置くと、エラーの理由を含むツールヒントが表示されます。
HSM 秘密鍵証明書エイリアスのプロパティの更新 update-hsm-credential-alias-properties
- 管理コンソールで、設定/Trust Store の管理/HSM 秘密鍵証明書をクリックします。
- 秘密鍵証明書エイリアスのエイリアス名をクリックします。
- 「秘密鍵証明書を更新」をクリックし、必要に応じて設定を更新します。
すべての HSM 接続のリセット reset-all-hsm-connections
Forms サーバーと HSM デバイス間のネットワークセッションが中断された後に HSM デバイスへのオープン接続をリセットします。例えば、ネットワーク障害が発生した場合や、ソフトウェア更新のために HSM デバイスがオフラインになったときに、セッションが中断される可能性があります。中断が発生すると既存の接続は古くなり、これらの接続に対するすべての署名リクエストが失敗します。「すべての HSM 接続をリセット」オプションを使用すると、古い接続がクリアされます。
- 管理コンソールで、設定/Trust Store の管理/HSM 秘密鍵証明書をクリックします。
- 「すべての HSM 接続をリセット」をクリックします
HSM 秘密鍵証明書エイリアスの削除 delete-an-hsm-credential-alias
- 管理コンソールで、設定/Trust Store の管理/HSM 秘密鍵証明書をクリックします。
- 削除する HSM 秘密鍵証明書のチェックボックスをオンにして「削除」をクリックし、「OK」をクリックします。
リモート HSM サポートの設定 configure-remote-hsm-support
AEM Forms では、web サービスベースの IPC/RPC メカニズムを使用します。このメカニズムによって、AEM Forms でリモートコンピューターにインストールされた HSM を使用できます。この機能を使用するには、HSM がインストールされているリモートコンピューター上に、web サービスをインストールする必要があります。詳しくは、Windows 64 ビットプラットフォームでの Sun JDK を使用した AEM Forms ES の HSM サポートの設定を参照してください。
このメカニズムは、HSM プロファイルのオンライン作成やステータスチェックをサポートしていません。ただし、HSM プロファイルの作成およびステータスチェックを実行する方法には次の 2 つがあります。
- 署名者の証明書を渡して、AEM Forms クライアント資格情報を作成します。Windows 64 ビットプラットフォームでの Sum JDK を使用した AEM Forms EX の HSM サポートの設定に記載されている手順を実行します。Web サービスの場所は資格情報プロパティとして渡されます。また、証明書 DER または 証明書 SHA-1 hex を使用した HSM プロファイルのオフライン作成もサポートされています。ただし、以前のバージョンの AEM Forms から AEM Forms にアップグレードした場合は、資格情報に証明書と web サービス情報が含まれているので、クライアントに変更を加える必要があります。
- Web サービスの場所は管理コンソールの Signatures サービスで指定します(Signature サービスの設定を参照)。この場合、クライアントは Trust Store 内の HSM プロファイルのエイリアスのみを保持します。この方法は、以前のバージョンの AEM Forms から AEM Forms にアップグレードした場合でもクライアントに変更を加えることなく、シームレスに使用できます。証明書 SHA-1 を使用して作成した HSM プロファイルは、この方法ではサポートされていません。