前提条件
AMI: Microsoft Windows Server 2022 Base (ami-0c798d4b81e585f36)
の手順が終わっていること。
こちらの CSR の作成手順でエラー (Invalid provider specified) が出るところで止まっていること。
解決方法
msi ファイルでの CLI インストール
から、CloudHSM CLI の msi ファイルをダウンロードする
ダウンロードした msi ファイルをダブルクリックして、指示に従ってインストールする。
IPアドレスの設定 & 耐久性チェックをオフにする
cd "C:\Program Files\Amazon\CloudHSM\bin"
configure-cli.exe -a <The ENI IPv4 / IPv6 addresses of the HSMs>
configure-cli.exe --disable-key-availability-check
msi ファイルでのKSPインストール & 設定
から、CloudHSM KSP の msi ファイルをダウンロードする
ダウンロードした msi ファイルをダブルクリックして、指示に従ってインストールする。その後、IPアドレスを設定し、耐久性チェックをオフにする。(忘れがちなので注意)
cd "C:\Program Files\Amazon\CloudHSM\bin"
configure-ksp.exe -a <The ENI IPv4 / IPv6 addresses of the HSMs>
configure-ksp.exe --disable-key-availability-check
認証
CU の認証情報を入力する。
cd "C:\Program Files\Amazon\CloudHSM\tools\"
set_cloudhsm_credentials.exe --username <CU USER> --password <CU PASSWORD>
CSRの作成・結果
certutil -csplist
を実行すると、以下のように出る(成功)
...
Provider Name: CloudHSM Key Storage Provider
Provider Name: Cavium Key Storage Provider
...
CSRを作成することができる
request.inf
[Version]
Signature= $Windows NT$
[NewRequest]
Subject = "CN=AWS"
KeyLength = 2048
ProviderName = "CloudHSM Key Storage Provider"
ProviderType = 1
KeySpec = 1
MachineKeySet = TRUE
>certreq.exe -new request.inf request.csr
CertReq: Request Created
参考
うまくいかないときはこちらを参照してみてください。
2024年09月時点では SDK5 はCNG および KSP プロバイダーをまだサポートしていなかったようですが、今はドキュメントを見る限りではサポートしています。
途中で出たエラー文
>certreq.exe -new request.inf request.csr
Certificate Request Processor: Provider type not defined. 0x80090017 (-2146893801 NTE_PROV_TYPE_NOT_DEF)
>certutil -csplist
Provider Name: CloudHSM Key Storage Provider
CloudHSM Key Storage Provider: An internal error occurred.
Provider Name: Cavium Key Storage Provider
Cavium Key Storage Provider: An internal error occurred.
>certreq.exe -new request.inf request.csr
Certificate Request Processor: An internal error occurred. 0x80090020 (-2146893792 NTE_FAIL)
この辺りは IP アドレスの設定や耐久性チェックのオフを忘れていると発生する。