Nous ne pouvons pas nous connecter à un serveur HTTPS à l'aide WebRequest
de ce message d'erreur:
The request was aborted: Could not create SSL/TLS secure channel.
Nous savons que le serveur n'a pas de certificat HTTPS valide avec le chemin d'accès utilisé, mais pour contourner ce problème, nous utilisons le code suivant que nous avons extrait d'un autre article StackOverflow:
private void Somewhere() {
ServicePointManager.ServerCertificateValidationCallback += new RemoteCertificateValidationCallback(AlwaysGoodCertificate);
}
private static bool AlwaysGoodCertificate(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors policyErrors) {
return true;
}
Le problème est que le serveur ne valide jamais le certificat et échoue avec l'erreur ci-dessus. Quelqu'un a-t-il une idée de ce que je dois faire?
Je dois mentionner qu'un collègue et moi avons effectué des tests il y a quelques semaines et que cela fonctionnait bien avec quelque chose de similaire à ce que j'ai écrit ci-dessus. La seule "différence majeure" que nous avons trouvée est que j'utilise Windows 7 et qu'il utilisait Windows XP. Cela change-t-il quelque chose?
The request was aborted: Could not create SSL/TLS secure channel
est très générique. Il dit essentiellement, "l'initialisation de la connexion SSL / TLS / HTTPS a échoué pour l'une des nombreuses raisons possibles". Donc, si vous l'obtenez régulièrement dans une situation spécifique, votre meilleure option est de poser une question spécifique donnant des détails spécifiques sur cette situation. Et consultez l'Observateur d'événements pour plus d'informations. Et / ou activez un débogage côté client .NET pour obtenir plus de détails (le certificat du serveur n'est-il pas approuvé? Y a-t-il une incompatibilité de chiffrement? Incompatibilité de version du protocole SSL / TLS? Etc.).