ホームページ  >  記事  >  Java  >  Java アプリケーションで「PKIX パスの構築に失敗しました」というエラーが発生するのはなぜですか?

Java アプリケーションで「PKIX パスの構築に失敗しました」というエラーが発生するのはなぜですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-10-24 18:11:37526ブラウズ

Why Am I Getting a

PKIX パスの構築に失敗しました: 問題の理解と解決

エラー メッセージ「PKIX パスの構築に失敗しました: への有効な証明書パスが見つかりません」 「要求されたターゲット」は、Java クライアントが、アクセスしようとしている HTTPS Web サービスへの安全な接続を確立できないことを示します。このエラーは、クライアントがサーバーの証明書チェーンを検証できない場合に発生します。

問題の原因:

  • トラスト ストアが見つからないか無効です : Java クライアントは、安全な接続を確立するためにサーバーの証明書を信頼する必要があります。この信頼は、サーバーの証明書をクライアントの信頼ストアに追加することによって確立されます。トラスト ストアが見つからない場合、またはサーバーの証明書がトラスト ストアにない場合、クライアントでこのエラーが発生します。
  • 無効なサーバー証明書: サーバーの証明書が無効であるか、期限切れである可能性があります。これにより、クライアントが証明書チェーンを正常に検証できなくなる可能性があります。
  • 認識されない認証局: サーバーの証明書を発行した認証局 (CA) が、クライアントの信頼された CA によって認識されない可能性があります。これにより、PKIX パスの構築が失敗する可能性もあります。

解決策:

この問題を解決するには、次の条件が満たされていることを確認する必要があります。

  • トラスト ストアの構成: サーバーの証明書を含むトラスト ストアの場所を指すように javax.net.ssl.trustStore システム プロパティを設定します。さらに、信頼ストアのパスワードを指定するように javax.net.ssl.trustStorePassword を設定します (存在する場合)。
  • 有効なサーバー証明書を取得する: サーバーの証明書が無効または期限切れの場合は、取得します。信頼できる CA からの新しい有効な証明書。
  • CA をトラスト ストアに追加: サーバーの証明書を発行した CA がクライアントによって認識されない場合は、CA の証明書をクライアントの証明書に追加します。 trust store.

Java クライアント用の特定の証明書:

はい、Java クライアント用の特定の証明書が必要です。証明書は次のとおりである必要があります。

  • Java Runtime Environment (JRE) によって信頼されている CA によって署名されている
  • Personal Information Exchange (PKCS12) 形式
  • 拡張子 .keystore または .p12 を使用して
  • JRE のセキュリティ ディレクトリ (通常は jdk/jre/lib/security) に保存されます

次の手順に従うことで、問題を解決できるはずですPKIX パスの構築に失敗し、HTTPS Web サービスへの安全な接続を確立します。

以上がJava アプリケーションで「PKIX パスの構築に失敗しました」というエラーが発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。