ホームページ > Java > &#&チュートリアル > Java で「sun.security.provider.certpath.SunCertPathBuilderException: 要求されたターゲットへの有効な証明書パスが見つかりません」を解決する方法は?

Java で「sun.security.provider.certpath.SunCertPathBuilderException: 要求されたターゲットへの有効な証明書パスが見つかりません」を解決する方法は?

Linda Hamilton
リリース: 2025-01-01 14:39:10
オリジナル
312 人が閲覧しました

How to Resolve

Java で有効な証明書パスが見つかりません

エラー「sun.security.provider.certpath.SunCertPathBuilderException: 見つかりません」が発生した場合https サーバーへの接続中に、要求されたターゲットへの有効な証明書パスが表示される場合は、証明書に問題があることを示しますverify.

原因:

このエラーは、JVM がサーバーの証明書チェーンを検証できない場合に発生します。これは、自己署名証明書を使用しているか、サーバーの証明書を発行した認証局を JVM が信頼していないことが原因である可能性があります。

解決策:

1.証明書を信頼できるストアに追加:

自己署名証明書を使用する場合の問題を解決するには、証明書を JVM の信頼ストアに追加します。これには、通常 JAVA_HOME/jre/lib/security/cacerts にある Java キーストアにアクセスし、サーバーの証明書を信頼された機関として追加することが含まれます。

2. -Djavax.net.ssl.trustStore JVM パラメータを使用します:

または、Java アプリケーションの起動時に -Djavax.net.ssl.trustStore JVM パラメータを使用してカスタム トラスト ストアの場所を指定できます。 。これにより、システム キーストアを変更せずに別のトラスト ストアを維持できます。

3. JDK/JRE を確認します:

アプリケーションが必要とする Java のバージョンに関連付けられた正しい JDK または JRE を使用していることを確認します。 JDK/JRE バージョンが一致しないと、証明書検証の問題が発生する可能性があります。

4.代替名の例外を解決します:

「java.security.cert.CertificateException: localhost に一致する名前が見つかりません」という例外が発生した場合は、証明書のサブジェクト代替名 (SAN) がホストに一致しないことを示します。アクセスしているホスト。 SAN とホスト名の有効性を確認するか、ワイルドカード証明書を受け入れるように Java 設定を更新します。

以上がJava で「sun.security.provider.certpath.SunCertPathBuilderException: 要求されたターゲットへの有効な証明書パスが見つかりません」を解決する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート