AWS CloudHSM でクラスターの HSM のアイデンティティと正当性を確認する (オプション) - AWS CloudHSM

AWS CloudHSM でクラスターの HSM のアイデンティティと正当性を確認する (オプション)

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

注記

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

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

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

  2. 証明書チェーンの検証 - このステップでは、AWS CloudHSM ルート証明書と製造元ルート証明書の 2 つの証明書チェーンを構築します。次に、これらの証明書チェーンを使用して HSM 証明書を検証し、AWS CloudHSM とハードウェア製造元の両方が HSM のアイデンティティと正当性を証明していることを確認します。

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

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

HSM 証明書とその関係。
AWS ルート証明書

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

製造元のルート証明書

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

AWS ハードウェア証明書

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

製造元のハードウェア証明書

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

HSM 証明書

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

クラスター CSR

最初の HSM によってクラスター CSR が作成されます。クラスター CSR に署名する と、クラスターがクレームされます。次に、署名した CSR を使用して クラスターを初期化 できます。

ステップ 1. HSM からの証明書の取得

HSM のアイデンティティと正当性を確認するには、最初に CSR と 5 つの証明書を取得します。HSM から 3 つの証明書を取得します。これは、AWS CloudHSM コンソールAWS Command Line Interface (AWS CLI) 、AWS CloudHSM API で行うことができます。

Console
CSR および HSM 証明書を取得するには (コンソール)
  1. AWS CloudHSM コンソール (https://console.aws.amazon.com/cloudhsm/home) を開きます。

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

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

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

  5. 証明書と CSR の準備ができると、それらをダウンロードするためのリンクが表示されます。

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

AWS CLI
CSR および HSM 証明書を取得するには (AWS CLI)
  • コマンドプロンプトで、describe-clusters コマンドを 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
    2. 次のコマンドを発行して HSM 証明書を抽出します。<cluster ID> を、前に作成したクラスターの ID に置き換えます。

      $ aws cloudhsmv2 describe-clusters --filters clusterIds=<cluster ID> \ --output text \ --query 'Clusters[].Certificates.HsmCertificate' \ > <cluster ID>_HsmCertificate.crt
    3. 次のコマンドを発行して AWS ハードウェア証明書を抽出します。<cluster ID> を、前に作成したクラスターの ID に置き換えます。

      $ aws cloudhsmv2 describe-clusters --filters clusterIds=<cluster ID> \ --output text \ --query 'Clusters[].Certificates.AwsHardwareCertificate' \ > <cluster ID>_AwsHardwareCertificate.crt
    4. 次のコマンドを発行して製造元のハードウェア証明書を抽出します。<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)
  • DescribeClusters リクエストを送信し、レスポンスから CSR と証明書を抽出して保存します。

ステップ 2. ルート証明書の取得

以下のステップに従い、AWS CloudHSM と製造元のルート証明書を取得します。ルート証明書ファイルを、CSR と HSM 証明書ファイルが含まれているディレクトリに保存します。

AWS CloudHSM と製造元のルート証明書を取得するには
  1. AWS CloudHSM ルート証明書 (AWS_CloudHSM_Root-G1.zip) のダウンロード

  2. HSM タイプに適した製造元のルート証明書をダウンロードします。

    注記

    ランディングページから各証明書をダウンロードするには、次のリンクにアクセスします。

    [Download Certificate] リンクを右クリックしてから、[Save Link As...] を選択して証明書ファイルを保存することが必要になる場合があります。

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

ステップ 3. 証明書チェーンの確認

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

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

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

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

    $ cat <cluster ID>_AwsHardwareCertificate.crt \ AWS_CloudHSM_Root-G1.crt \ > <cluster ID>_AWS_chain.crt
  2. 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
  2. 製造元の証明書チェーンで HSM 証明書を検証するには、次の OpenSSL コマンドを使用します。<cluster ID> を、前に作成したクラスターの ID に置き換えます。

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

ステップ 4. パブリックキーの抽出と比較

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

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

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

    $ openssl x509 -in <cluster ID>_HsmCertificate.crt -pubkey -noout > <cluster ID>_HsmCertificate.pub
  2. 次のコマンドを使用して、クラスター CSR からパブリックキーを抽出します。

    $ openssl req -in <cluster ID>_ClusterCsr.csr -pubkey -noout > <cluster ID>_ClusterCsr.pub
  3. 次のコマンドを使用してパブリックキーを比較します。パブリックキーが同じである場合、次のコマンドによる出力はありません。

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

HSM のアイデンティティと正当性を確認したら、「クラスターの初期化」に進みます。