

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

# でクラスターの HSM のアイデンティティと信頼性を検証する AWS CloudHSM (オプション)
<a name="verify-hsm-identity"></a>

クラスターを初期化するには AWS CloudHSM、クラスターの最初のハードウェアセキュリティモジュール (HSM) によって生成された証明書署名リクエスト (CSR) に署名します。その前に、HSM のアイデンティティと正当性を確認することをお勧めします。

**注記**  
このプロセスはオプションです。ただし、使用できるのはクラスターが初期化される前に限られます。クラスターの初期化後は、このプロセスを使用して証明書の取得や HSM の検証を行うことはできません。

クラスターの最初の HSM のアイデンティティを確認するには、次のステップを実行します。

1. [証明書と CSR の取得](#get-certificates) - このステップでは、3 つの証明書と CSR を HSM から取得します。また、2 つのルート証明書も取得します。1 つは HSM ハードウェアメーカーから AWS CloudHSM 、もう 1 つは HSM ハードウェアメーカーから取得します。

1. [証明書チェーンの検証](#verify-certificate-chains) – このステップでは、2 つの証明書チェーンを作成します。1 つは AWS CloudHSM ルート証明書、もう 1 つは製造元ルート証明書です。次に、これらの証明書チェーンを使用して HSM 証明書を検証し、 AWS CloudHSM とハードウェア製造元の両方が HSM のアイデンティティと信頼性を証明しているかどうかを確認します。

1. [パブリックキーの比較](#compare-public-keys) - このステップでは、HSM 証明書とクラスター CSR のパブリックキーを抽出および比較し、それらが同じであることを確認します。これにより、CSR は認証され、信頼された HSM によって生成されていることを確信できます。

次の図は、CSR、証明書、およびその相互関係を示しています。以下のリストでは、各証明書を定義します。

![\[HSM 証明書とその関係。\]](http://docs.aws.amazon.com/ja_jp/cloudhsm/latest/userguide/images/hsm-certificate-relationships.png)


**AWS ルート証明書**  
これはルート証明書 AWS CloudHSMです。

**製造元のルート証明書**  
これは、ハードウェア製造元のルート証明書です。

**AWS ハードウェア証明書**  
AWS CloudHSM は、HSM ハードウェアがフリートに追加されると、この証明書を作成しました。この証明書は、ハードウェア AWS CloudHSM を所有する をアサートします。

**製造元のハードウェア証明書**  
この証明書は、HSM ハードウェア製造元が HSM ハードウェアを製造したときに作成したものです。この証明書は、製造元がハードウェアを作成したことを主張しています。

**HSM 証明書**  
クラスターの最初の HSM を作成すると、FIPS 検証済みハードウェアが HSM 証明書を生成します。この証明書は、HSM ハードウェアが HSM の作成元であることを証明します。

**クラスター CSR**  
最初の HSM によってクラスター CSR が作成されます。[クラスター CSR に署名する](initialize-cluster.md#sign-csr) と、クラスターがクレームされます。次に、署名した CSR を使用して [クラスターを初期化](initialize-cluster.md#initialize) できます。

## ステップ 1. HSM からの証明書の取得
<a name="get-certificates"></a>

HSM のアイデンティティと正当性を確認するには、最初に CSR と 5 つの証明書を取得します。HSM から 3 つの証明書を取得します。これは、[AWS CloudHSM コンソール](https://console.aws.amazon.com/cloudhsm/)、 [AWS Command Line Interface (AWS CLI)](https://aws.amazon.com/cli/)、または AWS CloudHSM API で実行できます。

------
#### [ Console ]

**CSR および HSM 証明書を取得するには (コンソール)**

1. [https://console.aws.amazon.com/cloudhsm/home](https://console.aws.amazon.com/cloudhsm/home) で AWS CloudHSM コンソールを開きます。

1. 検証する HSM のクラスター ID の横にあるラジオボタンをオンにします。

1. **アクション** を選択します。ドロップダウンメニューから **初期化** を選択します。

1. HSM を作成する [前のステップ](create-hsm.md) を完了していない場合は、作成する HSM のアベイラビリティーゾーン (AZ) を選択します。次に、**作成** を選択します。

1. 証明書と CSR の準備ができると、それらをダウンロードするためのリンクが表示されます。  
![\[AWS CloudHSM コンソールのダウンロード証明書署名リクエストページ。\]](http://docs.aws.amazon.com/ja_jp/cloudhsm/latest/userguide/images/download-csr-hsm-cert.png)

1. 各リンクを選択し、CSR と証明書をダウンロードして保存します。以降のステップを簡素化するために、すべてのファイルを同じディレクトリに保存し、デフォルトのファイル名を使用します。

------
#### [ AWS CLI ]

**CSR および HSM 証明書を取得するには ([AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/))**
+ コマンドプロンプトで、**[describe-clusters](https://docs.aws.amazon.com/cli/latest/reference/cloudhsmv2/describe-clusters.html)** コマンドを 4 回実行し、毎回 CSR と異なる証明書を抽出してファイルに保存します。

  1. 次のコマンドを発行してクラスター CSR を抽出します。*<cluster ID>* を、前に作成したクラスターの ID に置き換えます。

     ```
     $ aws cloudhsmv2 describe-clusters --filters clusterIds=<cluster ID> \
                                        --output text \
                                        --query 'Clusters[].Certificates.ClusterCsr' \
                                        > <cluster ID>_ClusterCsr.csr
     ```

  1. 次のコマンドを発行して HSM 証明書を抽出します。*<cluster ID>* を、前に作成したクラスターの ID に置き換えます。

     ```
     $ aws cloudhsmv2 describe-clusters --filters clusterIds=<cluster ID> \
                                        --output text \
                                        --query 'Clusters[].Certificates.HsmCertificate' \
                                        > <cluster ID>_HsmCertificate.crt
     ```

  1. 次のコマンドを発行して、 AWS ハードウェア証明書を抽出します。*<cluster ID>* を、前に作成したクラスターの ID に置き換えます。

     ```
     $ aws cloudhsmv2 describe-clusters --filters clusterIds=<cluster ID> \
                                        --output text \
                                        --query 'Clusters[].Certificates.AwsHardwareCertificate' \
                                        > <cluster ID>_AwsHardwareCertificate.crt
     ```

  1. 次のコマンドを発行して製造元のハードウェア証明書を抽出します。*<cluster ID>* を、前に作成したクラスターの ID に置き換えます。

     ```
     $ aws cloudhsmv2 describe-clusters --filters clusterIds=<cluster ID> \
                                        --output text \
                                        --query 'Clusters[].Certificates.ManufacturerHardwareCertificate' \
                                        > <cluster ID>_ManufacturerHardwareCertificate.crt
     ```

------
#### [ AWS CloudHSM API ]

**CSR 証明書と HSM 証明書を取得するには (AWS CloudHSM API)**
+ [https://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_DescribeClusters.html](https://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_DescribeClusters.html) リクエストを送信し、レスポンスから CSR と証明書を抽出して保存します。

------

## ステップ 2. ルート証明書の取得
<a name="get-root-certificates"></a>

 AWS CloudHSM および製造元のルート証明書を取得するには、次の手順に従います。ルート証明書ファイルを、CSR と HSM 証明書ファイルが含まれているディレクトリに保存します。

**AWS CloudHSM および製造元のルート証明書を取得するには**

1.  AWS CloudHSM ルート証明書のダウンロード: [AWS\$1CloudHSM\$1Root-G1.zip](samples/AWS_CloudHSM_Root-G1.zip)

1. HSM タイプに適した製造元のルート証明書をダウンロードします。
   + hsm1.medium 製造元ルート証明書: [liquid\$1security\$1certificate.zip](https://www.marvell.com/content/dam/marvell/en/public-collateral/security-solutions/liquid_security_certificate.zip)
   + hsm2m.medium 製造元ルート証明書: [liquid\$1security\$1certificate.zip](https://www.marvell.com/content/dam/marvell/en/public-collateral/security-solutions/liquidsecurity2_ar_v1.zip)
**注記**  
ランディングページから各証明書をダウンロードするには、次のリンクにアクセスします。  
hsm1.medium の[製造元ルート証明書](https://www.marvell.com/products/security-solutions/liquid-security-hsm-adapters-and-appliances/liquidsecurity-certificate.html)のランディングページ
hsm2m.medium の[製造元ルート証明書](https://www.marvell.com/products/security-solutions/nitrox-hs-adapters/liquidsecurity2-certificate-ls2-g-axxx-ar-f-bo-v1.html)のランディングページ
[**Download Certificate**] リンクを右クリックしてから、[**Save Link As...**] を選択して証明書ファイルを保存することが必要になる場合があります。

1. ファイルをダウンロードした後、内容を抽出 (解凍) します。

## ステップ 3. 証明書チェーンの確認
<a name="verify-certificate-chains"></a>

このステップでは、2 つの証明書チェーンを作成します。1 つは AWS CloudHSM ルート証明書、もう 1 つは製造元ルート証明書です。次に、OpenSSL を使用して各証明書チェーンの HSM 証明書を検証します。

証明書チェーンを作成するには、Linux シェルを開きます。OpenSSL が必要です (ほとんどの Linux シェルにあります)。さらに、ダウンロードした[ルート証明書](#get-root-certificates)と [HSM 証明書ファイル](#get-certificates)が必要です。ただし、このステップ AWS CLI では は必要ありません。シェルを AWS アカウントに関連付ける必要はありません。

**AWS CloudHSM ルート証明書を使用して HSM 証明書を検証するには**

1. ダウンロードした[ルート証明書](#get-root-certificates)と [HSM 証明書ファイル](#get-certificates)の保存先のディレクトリに移動します。以下のコマンドでは、すべての証明書が現在のディレクトリにあり、デフォルトのファイル名を使用しているものとします。

   次のコマンドを使用して、ハードウェア証明書と AWS CloudHSM ルート証明書を含む AWS 証明書チェーンをその順序で作成します。*<cluster ID>* を、前に作成したクラスターの ID に置き換えます。

   ```
   $ cat <cluster ID>_AwsHardwareCertificate.crt \
         AWS_CloudHSM_Root-G1.crt \
         > <cluster ID>_AWS_chain.crt
   ```

1.  AWS 証明書チェーンで HSM 証明書を検証するには、次の OpenSSL コマンドを使用します。*<cluster ID>* を、前に作成したクラスターの ID に置き換えます。

   ```
   $ openssl verify -CAfile <cluster ID>_AWS_chain.crt <cluster ID>_HsmCertificate.crt
   <cluster ID>_HsmCertificate.crt: OK
   ```

**製造元のルート証明書で HSM 証明書を検証するには**

1. 次のコマンドを使用して、製造元のハードウェア証明書と、製造元のルート証明書が含まれている証明書チェーンを、その順番で作成します。*<cluster ID>* を、前に作成したクラスターの ID に置き換えます。

   ```
   $ cat <cluster ID>_ManufacturerHardwareCertificate.crt \
         liquid_security_certificate.crt \
         > <cluster ID>_manufacturer_chain.crt
   ```

1. 製造元の証明書チェーンで HSM 証明書を検証するには、次の OpenSSL コマンドを使用します。*<cluster ID>* を、前に作成したクラスターの ID に置き換えます。

   ```
   $ openssl verify -CAfile <cluster ID>_manufacturer_chain.crt <cluster ID>_HsmCertificate.crt
   <cluster ID>_HsmCertificate.crt: OK
   ```

## ステップ 4. パブリックキーの抽出と比較
<a name="compare-public-keys"></a>

OpenSSL を使用して HSM 証明書とクラスター CSR のパブリックキーを抽出および比較して、それらが同じであることを確認します。

パブリックキーを比較するには、Linux シェルを使用します。ほとんどの Linux シェルで使用できる OpenSSL が必要ですが、このステップ AWS CLI では は必要ありません。シェルを AWS アカウントに関連付ける必要はありません。

**パブリックキーを抽出して比較するには**

1. 次のコマンドを使用して、HSM 証明書からパブリックキーを抽出します。

   ```
   $ openssl x509 -in <cluster ID>_HsmCertificate.crt -pubkey -noout > <cluster ID>_HsmCertificate.pub
   ```

1. 次のコマンドを使用して、クラスター CSR からパブリックキーを抽出します。

   ```
   $ openssl req -in <cluster ID>_ClusterCsr.csr -pubkey -noout > <cluster ID>_ClusterCsr.pub
   ```

1. 次のコマンドを使用してパブリックキーを比較します。パブリックキーが同じである場合、次のコマンドによる出力はありません。

   ```
   $ diff <cluster ID>_HsmCertificate.pub <cluster ID>_ClusterCsr.pub
   ```

HSM のアイデンティティと正当性を確認したら、「[クラスターの初期化](initialize-cluster.md)」に進みます。