Je souhaite importer un certificat auto-signé dans Java afin que toute application Java qui tentera d'établir une connexion SSL fasse confiance à ce certificat.
Jusqu'à présent, j'ai réussi à l'importer dans
keytool -import -trustcacerts -noprompt -storepass changeit -alias $REMHOST -file $REMHOST.pem
keytool -import -trustcacerts -noprompt -keystore cacerts -storepass changeit -alias $REMHOST -file $REMHOST.pem
Pourtant, quand j'essaye de courir, HTTPSClient.class
j'obtiens toujours:
javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: la création du chemin PKIX a échoué: sun.security.provider.certpath.SunCertPathBuilderException: impossible de trouver un chemin de certification valide vers la cible demandée
Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider())
sont complètement inutiles dans la première partie. Le second ne fait aucune vérification de certificat. Essayez avec une plaineURLConnection
pour commencer. Etes - vous sûr que vous avez modifiécacerts
danslib/security
de votre installation JRE? Avez-vous essayé l'trustmanager
option de débogage ?