Skip to main content

[エラー] 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 形式の秘密鍵をサポートしていません。

対処方法

以下のいずれかの方法により、エラーを解消できる可能性があります。

  1. ScalarDL v3.9.2 以降および ScalarDL v3.8.2 以降のパッチバージョンを利用する
    ScalarDL v3.9.2 以降のバージョン(ScalarDL v3.8 の場合は v3.8.2 以降のパッチバージョン)は PKCS#8 形式の秘密鍵をサポートしております。これらのバージョンをご利用ください。

  2. 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 ドキュメント

参考情報 (外部ドキュメント)

なし