51 votes

Erreur de nuget de Visual Studio 2010 : La connexion sous-jacente a été fermée : Impossible d'établir une relation de confiance pour le canal sécurisé SSL/TLS

Chaque fois que j'essaie d'installer quelque chose ou même simplement de lister les paquets, j'obtiens cette erreur "La connexion sous-jacente a été fermée : Impossible d'établir une relation de confiance pour le canal sécurisé SSL/TLS".

J'ai essayé ce de Codeplex, sans succès.

J'utilise le dernière version de Nuget .

J'ai également essayé différentes options dans devenv.exe.config comme ceci :

<servicePointManager  checkCertificateName="false"    checkCertificateRevocationList="false"/>

96voto

Sunil Points 1375
  • Allez dans VS2010 Tools Library Package Manager Package Manager Settings.

  • Choisissez Package Manager Package Sources.

  • Ajouter un nouveau paquet source en tant que :

  • Remonter la source du paquet nouvellement ajouté à la première position.

  • Décochez la case existante "source officielle du paquet Nuget".

  • Redémarrez VS2010.

3 votes

Merci, cela a également fonctionné pour moi, sur Visual Studio 2013 Express, derrière un proxy/pare-feu d'entreprise. Je voulais juste ajouter que je n'ai pas eu besoin de redémarrer Visual Studio non plus. Cela fonctionne tout simplement.

20voto

Ivan Danilov Points 5719

Aller à https://nuget.org/ et obtenir son certificat.

Par exemple, si vous utilisez Firefox : après avoir ouvert le site nuget - cliquez sur l'icône du site sur le côté gauche de la barre d'adresse, cliquez sur "Plus d'informations", et sur l'onglet Sécurité il devrait y avoir une section "Identité du site Web" avec le bouton "Voir le certificat". Cliquez sur ce bouton, dans la boîte de dialogue ouverte, sélectionnez l'onglet "Détails" - vous devriez y voir la chaîne pour *.nuget.org. Cliquez sur le bouton 'Exporter' en bas et enregistrez le certificat dans le fichier (ajoutez .cer manuellement, car le dialogue ne le fera pas pour vous).

Vous devez maintenant configurer votre système pour qu'il fasse confiance au certificat. Appuyez sur Win+R (la boîte de dialogue Exécuter s'ouvre) -> tapez mmc et exécutez-le (avec des privilèges d'administrateur si vous avez activé l'UAC). Là, sélectionnez Fichier -> Ajouter ou supprimer un snapin... -> sélectionnez Certificats sur la gauche, dans la boîte de dialogue sélectionnez Computer account et Local computer . Cliquez sur OK - l'arbre aura Certificates dans le Console root . Ouvrez-la et le dossier de fichiers Trusted People . Dans son menu contextuel, sélectionnez Toutes les tâches -> Importer... -> Sélectionnez le fichier que vous avez exporté auparavant et importez-le.

Tout devrait fonctionner correctement.

1 votes

Dans le navigateur, je ne vois plus les erreurs de certificat, mais mon VS ne peut toujours pas installer le paquet.

0 votes

@Akim Je n'ai pas d'erreurs non plus, mais je voyais la même erreur jusqu'à ce que j'ajoute le certificat nuget à TrustedPeople. Il n'est probablement pas nécessaire d'établir une connexion et de visualiser le contenu du site, mais il est nécessaire d'installer les binaires du site sur votre ordinateur.

1 votes

Depuis deux jours, je cherche la cause et j'ai tout essayé. Finalement, votre solution est la seule qui fonctionne sur mon VS 2019. Merci.

11voto

christiandev Points 7747

Nous avons eu le même problème au travail, et nous l'avons résolu en abandonnant le socket sécurisé, Https -> http . Cela signifie que vous pouvez utiliser l'URL V2 http://nuget.org/api/v2/ .

Peut-être un problème pour se débarrasser du socket sécurisé, mais l'URL ci-dessus ( http://packages.nuget.org/v1/FeedService.svc/ ) n'est pas non plus sécurisé.

0 votes

Quand j'essaie ça, j'obtiens un http 404.

0 votes

Quelle URL essayez-vous ? La première ? Je viens d'essayer celle-là et ça marche bien.

8voto

anand Points 71

Il y a apparemment un problème avec le certificat SSL sur go.microsoft.com. Changez l'url de la source du paquet en http://packages.nuget.org/v1/FeedService.svc/ et ça devrait fonctionner parfaitement.

7voto

AndyElastacloud Points 542

En rapport : ServicePointManager ne supporte pas les proxies avec le schéma https.

Si vous avez déjà ouvert Fiddler, il se peut que le certificat de nuget.org ne soit pas valide.

Si c'est le cas, ouvrez MMC, ajoutez le snapin Certificats (Utilisateur actuel) et supprimez nuget.org du magasin Personnel.

Example certificate to remove

Comme Nuget garde la main sur ce certificat (apparemment), vous devrez redémarrer Visual Studio. Après, vous devriez avoir du bon temps.

2 votes

Merci. C'est certmgr.msc d'ailleurs.

2 votes

Cela a réglé le problème pour moi, bien que le certificat ne soit pas nommé nuget.org, il a supprimé tous les noms contenant nuget et myget. Merci beaucoup d'avoir publié votre découverte Andy

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X