Java で「PKIX パスの構築に失敗しました: 要求されたターゲットへの有効な証明書パスが見つかりません」を修正する方法は?

Linda Hamilton
リリース: 2024-10-25 03:12:30
オリジナル
366 人が閲覧しました

How to Fix

PKIX パス構築の失敗: 無効な証明書パスの解決

Java の標準 HttpClient ライブラリを使用して HTTPS エンドポイントに接続しようとすると、例外: 「PKIX パスの構築に失敗しました: 要求されたターゲットへの有効な証明書パスが見つかりません。」これは、証明書の検証に関連する問題により、クライアントが安全な TLS 接続を確立できないことを示します。

考えられる原因:

  • 信頼できるものが見つからない証明書: クライアントの信頼ストアには、サーバーの証明書を検証するために必要な証明書チェーンが含まれていない可能性があります。
  • 信頼できない証明書: サーバーの証明書は、信頼されたルート認証局によって署名されていない可能性があります(CA)、または期限切れまたは取り消されている可能性があります。

解決策: TrustStore の構成

この問題を解決するには、クライアントのトラスト ストアには、サーバーの証明書を発行した信頼できるルート CA の証明書が含まれます。 System.setProperty() メソッドを使用して、トラスト ストアのパスとパスワードを指す javax.net.ssl.trustStore プロパティと javax.net.ssl.trustStorePassword プロパティを設定できます。

次のコードは、これらのプロパティを設定する方法を示しています:

<code class="java">System.setProperty("javax.net.ssl.trustStore","clientTrustStore.key");
System.setProperty("javax.net.ssl.trustStorePassword","qwerty");</code>
ログイン後にコピー

トラスト ストアのプロパティを設定すると、クライアントはサーバーの証明書を検証し、安全な接続を確立できるようになります。

証明書に関する注意:

  • トラスト ストアには、サーバーの証明書に署名したルート CA 証明書が含まれている必要があります。
  • ルート CA 証明書は、 CA の Web サイトや認証局リポジトリなど、信頼できるソース。
  • xxx_IE.crt 証明書と xxx_FX.crt 証明書は、それぞれ Internet Explorer ブラウザと Firefox ブラウザに固有であり、Java クライアントでは機能しません。

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

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!