2009-12-21 13 views
2

Je fais un cfhttp pour se connecter à une page cryptée. Semble fonctionner correctement pour certains sites.Coldfusion: CFHTTP avec SSL crypté page (https: //) - a une erreur

I/O Exception: Name in certificate `pro.test.com' does not match host name `go.test.com' 

est-il une solution de contournement à faire confiance à ce certificat, même si le nom d'hôte ne correspond pas?

Répondre

8

Pensez que c'est plus question Java, et une solution de contournement devrait affecter le JRE.

Vous ne savez pas si cela fonctionnera dans votre cas, mais solution possible consiste à importer ce certificat dans le magasin de clés JRE.

Description générique peut être trouvé à Sun website. Bien que le processus soit assez simple. Vous devez d'abord naviguer dans l'URL HTTPS requise avec votre navigateur et exporter le certificat à l'aide des propriétés SSL (ne me souviens pas comment cela se fait dans IE, mais dans Firefox comme Sécurité> Afficher le CERT> Détails> Enregistrer sous - toujours pas sûr car en utilisant la licalisation non-anglais), n'importe quel type de X.509 devrait fonctionner.

Ensuite, vous devez l'importer en utilisant keytool. Accédez au courant bin de CF JRE, exécutez la commande suivante (remplacer les arguments avec vos valeurs) et redémarrez CF:

keytool -keystore <path to keystore> -import -file <path to certificate> -alias <alias> 

BTW, il y a un UI tool pour cela, mais je l'ai pas utilisé ne peut donc pas dire si ça fonctionne bien.

+0

Un autre outil de l'interface utilisateur: https://sourceforge.net/projects/portecle – approxiblue

0

Les sites qui fonctionnent probablement ont un certificat SSL valide d'une autorité de confiance.

Si vous avez le contrôle de pro.test.com, la réponse préférée serait d'obtenir un certificat valide pour pro.test.com installé. Mais si ce n'est pas possible pour une raison quelconque, je vois deux autres options:

1) Faites un essai/catch où vous essayez de vous connecter via https, et retombez sur http dans le cas d'une erreur SSL. Évidemment, cela éliminerait le cryptage de la connexion défaillante.

ou

2) La solution d'utilisation Sergii pour importer la clé de ce site dans le keystore Java.

0

Si go.test.com n'est qu'un serveur de développement, vous pouvez créer un certificat auto-signé et l'importer dans le magasin de clés Java. De cette façon, vous pouvez économiser sur les coûts en ne payant pas à CA et obtenir un redressement plus rapide pour résoudre le problème.