SSLを使用した双方向/相互認証用にセットアップされたTomcatにデプロイされたJRuby on Railsアプリケーションがあります。Rails アプリケーションにリクエストが届くと、外部サーバーにリクエストを送信します。その外部サーバーには、要求元の人物の証明書が必要です。Rails アプリから証明書を取得し、外部サーバー (別の Rails アプリ) にリクエストを送信するときにそれを転送する必要があります。
Railsアプリのイニシャルが入るコントローラーでX509Certificate(Java)オブジェクトを取得できます。次に、DER 文字列 (X509CertificateImpl#getEncoded など) を取得し、必要に応じて PEM 文字列を作成できますが、外部 Rails アプリにリクエストを送信するときに、それを転送するにはどうすればよいでしょうか?
urlsafe base64 でエンコードされた PEM バージョンをヘッダーに貼り付けようとしましたが、外部 Rails アプリでそのヘッダーを引き出すと、その一部しか取得できないように見えます (送信された 2095 文字ではなく 60 文字)。
これを行う方法についてのアイデア/考えはありますか?