ある日突然、ある顧客の環境で下記のエラーが出るようになってしまいました。
sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
弊社環境では出ないですし、他社さんでも同様の報告はありません。
それって、SSL可視化が原因かもしれません。
SSL可視化とは
常時SSL(AOSSL:Always On SSL)が進み、盗聴のリスクが低減した昨今ですが、それによりファイアウォールでの脅威検知ができなくなってしまいました。
そこでSSL通信も覗いちゃおうというのがSSL可視化です。
盗聴できないのに覗き見るとはどうやんの???
「ファイアウォールが中間者攻撃している」と言えばわかりやすいでしょうか。
証明書がすり替わるのでそのままだとブラウザは例のエラー画面になってしまいます。
しかし、ファイアウォール自身が発行するオレオレルート証明書をクライアントにインストールすると、エラー画面になりません!
Active Directoryで管理された環境ならオレオレルート証明書を自動配布することも可能で、管理下のPCでは特に気にすることなく普段の業務ができます。
ここで、Java環境がケアされていないと、JavaアプリだけSSL証明書エラーが出るようになってしまいます。
なお、SSL可視化はベンダーによって、SSLインスペクション、SSLインターセプトなどと呼ばれています。
解決策
先方環境のファイアウォールからエクスポートしたオレオレルート証明書をJava環境にインポートする必要があります。
(もしくは通信先をSSL可視化から除外する設定をする)
開発側は手を出せません。解決策はメールを出すのみ。
お問い合わせありがとうございます。
SSL証明書エラーが出るようになったとのことでご迷惑をおかけし申し訳ございません。
弊社テスト環境で調査しましたが、正常に動作しました。また、他社で同様の不具合は報告されておりません。
以前、同じ現象があった際は、その環境でファイアウォールの構成変更があり、それが原因だったということがありました。
構成変更で、SSL可視化(SSLインスペクション、SSLインターセプトとも)が行われたとのことでした。
恐れ入りますが、御社システム部門に一度お問い合わせいただけないでしょうか。
お手数おかけし申し訳ございません。
以上、よろしくお願いいたします。