[エラー] ScalarDL の Pod が秘密鍵の読み込みに失敗して起動しない
updated: 2024-10-07 16:08:47 JST
対象製品/バージョン
- ScalarDL v3.9.0 および v3.9.1
- ScalarDL v3.8.1 以前のバージョン
事象
認証方法に digital-signature を使用する設定で ScalarDL をデプロイした際にエラーが発生しました。ScalarDL の Pod が秘密鍵の読み込みに失敗して起動しません。対応方法を教えてください。
ClassCastException: PrivateKeyInfo cannot be cast to PEMKeyPair
原因
ScalarDL がご利用の秘密鍵の形式をサポートしていないことに起因したエラーである可能性があります。ScalarDL (〜v3.8.1、v3.9.0 および v3.9.1) は PKCS#8 形式の秘密鍵をサポートしていません。
対処方法
以下のいずれかの方法により、エラーを解消できる可能性があります。
-
ScalarDL v3.9.2 以降および ScalarDL v3.8.2 以降のパッチバージョンを利用する
ScalarDL v3.9.2 以降のバージョン(ScalarDL v3.8 の場合は v3.8.2 以降のパッチバージョン)は PKCS#8 形式の秘密鍵をサポートしております。これらのバージョンをご利用ください。 -
ScalarDL (〜v3.8.1、v3.9.0 および v3.9.1) がサポートする形式の秘密鍵を利用する
ScalarDL (〜v3.8.1、v3.9.0 および v3.9.1) を利用する必要がある場合、これらのバージョンがサポートしている、SEC1 形式の秘密鍵を用意する必要があります。
あくまで参考情報とはなりますが、以下のように openssl コマンドを使用して、PKCS#8 形式のECDSA 秘密鍵を SEC1 形式の秘密鍵に変換することが可能です。
openssl ec -in <PKCS#8形式の秘密鍵名>.pem -out <変換後の秘密鍵名>.pem
認証方法に digital-signature を使用する際の証明書・秘密鍵の要件の詳細に関しましては、以下のドキュメントをご確認ください。
関連する Scalar ドキュメント
参考情報 (外部ドキュメント)
なし