

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

# クライアント SDK 3 を使用して Jarsigner で AWS CloudHSM キーストアを使用する
<a name="using_keystore_jarsigner"></a>

Jarsigner は、ハードウェア セキュリティ モジュール (HSM) に安全に保存されたキーを使用して JAR ファイルに署名するための一般的なコマンドラインユーティリティです。Jarsigner に関する完全なチュートリアルは、 AWS CloudHSM ドキュメントの対象外です。このセクションでは、 AWS CloudHSM キーストアを通じて信頼のルート AWS CloudHSM として を使用して署名および検証するために使用する Jarsigner パラメータについて説明します。

# Jarsigner で AWS CloudHSM キーと証明書をセットアップする
<a name="jarsigner_set_up_certificates"></a>

Jarsigner で AWS CloudHSM JAR ファイルに署名する前に、次の手順を設定または完了していることを確認してください。

1. 「[AWS CloudHSM キーストアの前提条件](keystore-prerequisites.md)」のガイダンスに従います。

1. 現在のサーバーまたはクライアントインスタンスの AWS CloudHSM キーストアに保存する必要がある署名キー、関連する証明書、証明書チェーンを設定します。でキーを作成し AWS CloudHSM 、関連するメタデータを AWS CloudHSM キーストアにインポートします。[「既存のキーを AWS CloudHSM キーストアに登録する](register-pre-existing-keys-with-keystore.md)」のコードサンプルを使用して、メタデータをキーストアにインポートします。keytool を使用してキーおよび証明書を設定する場合は、「[keytool を使用して新しい AWS CloudHSM キーを作成する](create_key_keytool.md)」を参照してください。複数のクライアントインスタンスを使用して JAR に署名する場合は、キーを作成し、証明書チェーンをインポートします。次に、結果のキーストアファイルを各クライアントインスタンスにコピーします。新しいキーを頻繁に生成する場合は、各クライアントインスタンスに証明書を個別にインポートする方が簡単です。

1. 証明書チェーン全体が検証可能である必要があります。証明書チェーンを検証できるようにするには、CA 証明書と中間証明書を AWS CloudHSM キーストアに追加する必要がある場合があります。Java コードを使用して証明書チェーンを検証する手順については、[「JAR ファイルの署名」の「コードスニペット AWS CloudHSM 」と「Jarsigner](jarsigner_sign_jar_using_hsm_jarsigner.md)」を参照してください。必要に応じて、keytool を使用して証明書をインポートできます。keytool を使用する手順については、[「Keytool を使用して中間証明書とルート証明書を AWS CloudHSM Key Store にインポート](import_cert_using_keytool.md)する」を参照してください。

# AWS CloudHSM と Jarsigner を使用して JAR ファイルに署名する
<a name="jarsigner_sign_jar_using_hsm_jarsigner"></a>

次のコマンドを使用して、 AWS CloudHSM と jarsigner を使用して JAR ファイルに署名します。

```
jarsigner -keystore example_keystore.store \
        -signedjar signthisclass_signed.jar \
        -sigalg sha512withrsa \
        -storetype CloudHSM \
        -J-classpath '-J/opt/cloudhsm/java/*:/usr/lib/jvm/java-1.8.0/lib/tools.jar' \
        -J-Djava.library.path=/opt/cloudhsm/lib \
        signthisclass.jar <key pair label>
```

署名付き JAR を確認するには、次のコマンドを使用します。

```
jarsigner -verify \
        -keystore example_keystore.store \
        -sigalg sha512withrsa \
        -storetype CloudHSM \
        -J-classpath '-J/opt/cloudhsm/java/*:/usr/lib/jvm/java-1.8.0/lib/tools.jar' \
        -J-Djava.library.path=/opt/cloudhsm/lib \
        signthisclass_signed.jar <key pair label>
```