Maison  >  Article  >  Java  >  Comment réparer « Échec de la création du chemin PKIX : impossible de trouver un chemin de certification valide vers la cible demandée » en Java ?

Comment réparer « Échec de la création du chemin PKIX : impossible de trouver un chemin de certification valide vers la cible demandée » en Java ?

Linda Hamilton
Linda Hamiltonoriginal
2024-10-25 03:12:30353parcourir

How to Fix

Échec de création de chemin PKIX : résolution d'un chemin de certification invalide

Lorsque vous essayez de vous connecter à un point de terminaison HTTPS à l'aide de la bibliothèque HttpClient standard de Java, vous avez rencontré un exception indiquant : « Échec de la création du chemin PKIX : impossible de trouver un chemin de certification valide vers la cible demandée. » Cela indique que le client ne parvient pas à établir une connexion TLS sécurisée en raison de problèmes liés à la vérification du certificat.

Causes potentielles :

  • Manquant de confiance Certificat : Le magasin de confiance du client peut ne pas contenir la chaîne de certificats nécessaire pour vérifier le certificat du serveur.
  • Certificat non fiable : Le certificat du serveur peut ne pas être signé par une autorité de certification racine de confiance (CA), ou il peut être expiré ou révoqué.

Solution : configurer un TrustStore

Pour résoudre ce problème, vous devez vous assurer que le client Le magasin de clés de confiance inclut le certificat de l'autorité de certification racine approuvée qui a émis le certificat du serveur. Vous pouvez utiliser la méthode System.setProperty() pour définir les propriétés javax.net.ssl.trustStore et javax.net.ssl.trustStorePassword, qui pointeront vers le chemin et le mot de passe de votre magasin de confiance.

Le Le code suivant montre comment définir ces propriétés :

<code class="java">System.setProperty("javax.net.ssl.trustStore","clientTrustStore.key");
System.setProperty("javax.net.ssl.trustStorePassword","qwerty");</code>

Une fois que vous avez défini les propriétés du magasin de confiance, le client pourra vérifier le certificat du serveur et établir une connexion sécurisée.

Remarque sur les certificats :

  • Le magasin de confiance doit contenir le certificat de l'autorité de certification racine qui a signé le certificat du serveur.
  • Vous devrez peut-être obtenir le certificat de l'autorité de certification racine auprès d'un source fiable, telle que le site Web de l'autorité de certification ou un référentiel d'autorité de certification.
  • Les certificats xxx_IE.crt et xxx_FX.crt sont spécifiques aux navigateurs Internet Explorer et Firefox, respectivement, et ne fonctionneront pas pour les clients Java.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn