AWS CloudHSM でクラスターの HSM のアイデンティティと正当性を確認する (オプション)
AWS CloudHSM でクラスターを初期化するには、クラスターの最初のハードウェアセキュリティモジュール (HSM) によって生成された証明書署名リクエスト (CSR) に署名する必要があります。その前に、HSM のアイデンティティと正当性を確認することをお勧めします。
注記
このプロセスはオプションです。ただし、使用できるのはクラスターが初期化される前に限られます。クラスターの初期化後は、このプロセスを使用して証明書の取得や HSM の検証を行うことはできません。
クラスターの最初の HSM のアイデンティティを確認するには、次のステップを実行します。
-
証明書と CSR の取得 - このステップでは、3 つの証明書と CSR を HSM から取得します。また、2 つのルート証明書を取得します (1 つは AWS CloudHSM から、もう 1 つは HSM ハードウェア製造元から)。
-
証明書チェーンの検証 - このステップでは、AWS CloudHSM ルート証明書と製造元ルート証明書の 2 つの証明書チェーンを構築します。次に、これらの証明書チェーンを使用して HSM 証明書を検証し、AWS CloudHSM とハードウェア製造元の両方が HSM のアイデンティティと正当性を証明していることを確認します。
-
パブリックキーの比較 - このステップでは、HSM 証明書とクラスター CSR のパブリックキーを抽出および比較し、それらが同じであることを確認します。これにより、CSR は認証され、信頼された HSM によって生成されていることを確信できます。
次の図は、CSR、証明書、およびその相互関係を示しています。以下のリストでは、各証明書を定義します。
- 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 コンソール
ステップ 2. ルート証明書の取得
以下のステップに従い、AWS CloudHSM と製造元のルート証明書を取得します。ルート証明書ファイルを、CSR と HSM 証明書ファイルが含まれているディレクトリに保存します。
AWS CloudHSM と製造元のルート証明書を取得するには
-
AWS CloudHSM ルート証明書 (AWS_CloudHSM_Root-G1.zip) のダウンロード
-
HSM タイプに適した製造元のルート証明書をダウンロードします。
hsm1.medium 製造元ルート証明書: liquid_security_certificate.zip
hsm2m.medium 製造元ルート証明書: liquid_security_certificate.zip
-
ファイルをダウンロードした後、内容を抽出 (解凍) します。
ステップ 3. 証明書チェーンの確認
このステップでは、2 つの証明書チェーンを構築します (1 つは AWS CloudHSM ルート証明書に対して、もう 1 つは製造元ルート証明書に対して)。次に、OpenSSL を使用して各証明書チェーンの HSM 証明書を検証します。
証明書チェーンを作成するには、Linux シェルを開きます。OpenSSL が必要です (ほとんどの Linux シェルにあります)。さらに、ダウンロードしたルート証明書と HSM 証明書ファイルが必要です。ただし、このステップで AWS CLI は不要です。また、シェルを AWS アカウントに関連付ける必要はありません。
AWS CloudHSM ルート証明書で HSM 証明書を検証するには
-
ダウンロードしたルート証明書と HSM 証明書ファイルの保存先のディレクトリに移動します。以下のコマンドでは、すべての証明書が現在のディレクトリにあり、デフォルトのファイル名を使用しているものとします。
次のコマンドを使用して、AWS ハードウェア証明書と、AWS CloudHSM ルート証明書が含まれている証明書チェーンを、その順番で作成します。
<cluster ID>
を、前に作成したクラスターの ID に置き換えます。$
cat
<cluster ID>
_AwsHardwareCertificate.crt \ AWS_CloudHSM_Root-G1.crt \ ><cluster ID>
_AWS_chain.crt -
AWS 証明書チェーンで HSM 証明書を検証するには、次の OpenSSL コマンドを使用します。
<cluster ID>
を、前に作成したクラスターの ID に置き換えます。$
openssl verify -CAfile
<cluster ID>
_AWS_chain.crt<cluster ID>
_HsmCertificate.crt<cluster ID>
_HsmCertificate.crt: OK
製造元のルート証明書で HSM 証明書を検証するには
-
次のコマンドを使用して、製造元のハードウェア証明書と、製造元のルート証明書が含まれている証明書チェーンを、その順番で作成します。
<cluster ID>
を、前に作成したクラスターの ID に置き換えます。$
cat
<cluster ID>
_ManufacturerHardwareCertificate.crt \ liquid_security_certificate.crt \ ><cluster ID>
_manufacturer_chain.crt -
製造元の証明書チェーンで 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 アカウントに関連付ける必要はありません。
パブリックキーを抽出して比較するには
-
次のコマンドを使用して、HSM 証明書からパブリックキーを抽出します。
$
openssl x509 -in
<cluster ID>
_HsmCertificate.crt -pubkey -noout ><cluster ID>
_HsmCertificate.pub -
次のコマンドを使用して、クラスター CSR からパブリックキーを抽出します。
$
openssl req -in
<cluster ID>
_ClusterCsr.csr -pubkey -noout ><cluster ID>
_ClusterCsr.pub -
次のコマンドを使用してパブリックキーを比較します。パブリックキーが同じである場合、次のコマンドによる出力はありません。
$
diff
<cluster ID>
_HsmCertificate.pub<cluster ID>
_ClusterCsr.pub
HSM のアイデンティティと正当性を確認したら、「クラスターの初期化」に進みます。