Impossible d'établir un canal sécurisé pour SSL / TLS avec l'autorité '*'
Je dois consommer un webservice PHP qui dispose d'un certificat SSL. Mon .net 3.5 Classe de la bibliothèque de références le webservice avec "Ajouter les références de Service" dans Visualstudio 2010 (WCF droit?).
Lors de l'appel de la méthode main de la classe webservice-je recevoir;
N'a pas pu établir un canal sécurisé SSL/TLS avec autorité " {base_url_of_WS}'.
J'ai essayé beaucoup de choses, comme
System.Net.ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(CheckValidationResult);
public bool CheckValidationResult(Object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslPolicyErrors)
{
return true;
}
Mais Ça ne marcherait pas. J'ai également le certificat est installé sur ma machine.
*Infos supplémentaires; Lorsque j'utilise l'emplacement wsdl dans "Ajouter une référence de service" la même erreur se produit. Avant je l'ai essayé, j'ai travaillé avec un statique wsdl.
source d'informationauteur Casper Broeren
Vous devez vous connecter pour publier un commentaire.
Oui un certificat non approuvé peut être en cause. Regardez le chemin de certificat pour le webservice par l'ouverture de la websservice dans un navigateur et d'utiliser les outils de votre navigateur pour regarder le chemin d'accès du certificat. Vous devrez peut-être installer un ou plusieurs certificats intermédiaires sur l'ordinateur de l'appel de la webservice. Dans le navigateur, vous pouvez voir "erreur de Certificat" avec l'option "Installer le Certificat" quand on l'examine de plus - ce qui pourrait être le certificat manquant.
Mon problème particulier a un Geotrust SSL Geotrust DV CA certificat intermédiaire portées disparues à la suite d'une mise à niveau de leur racine du serveur en juillet 2010
https://knowledge.geotrust.com/support/knowledge-base/index?page=content&id=AR1422
C'était exact, le problème que je rencontre. Dans un autre article j'ai eu une astuce pour modifier la configuration. Pour moi cela fonctionne:
Nous avons eu ce problème sur un nouveau serveur .pages aspx appeler un webservice. Nous n'avions pas donné la permission à l'application de la piscine de l'utilisateur pour le certificat de la machine. Le problème a été résolu après que nous a accordé la permission à l'application de la piscine de l'utilisateur.
Vous assurer que vous exécutez Visual Studio en tant qu'administrateur.
Au cas où il permet à quiconque, à l'aide de la nouvelle Microsoft Web Service Référence Fournisseur de l'outilqui est pour .NET Standard et .NET de Base, j'ai dû ajouter les lignes suivantes à la définition de liaison comme ci-dessous:
C'est effectivement la même que Micha de la réponse, mais dans le code comme il n'y a pas de fichier de config.
Est ici qu'est-ce résolu pour moi:
1) assurez-vous que vous exécutez Visual Studio en tant qu'Administrateur
2) Installer et exécuter winhttpcertcfg.exe pour accorder l'accès
https://msdn.microsoft.com/en-us/library/windows/desktop/aa384088(v=vs. 85).aspx
La commande est similaire à ci-dessous: (entrez votre certificat de sujet et service de nom)
Avait même erreur avec le code:
Résolu par l'ajout d'un mot de passe:
Problème
J'ai été en cours d'exécution dans le même message d'erreur lors de l'appel d'un tiers de l'API de mon projet MVC.
Solution
Il s'est avéré que la troisième partie de l'API de serveur requis TLS 1.2. Pour résoudre ce problème, j'ai ajouté la ligne suivante de code pour mon constructeur du contrôleur: