Note
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier les répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de changer de répertoire.
Scénario 1
Vous exécutez l’opération « restore » avec une source « HTTP » : myHttpSource. NuGet nécessite des sources HTTPS. Pour utiliser une source HTTP, vous devez définir explicitement « allowInsecureConnections » sur true dans votre fichier NuGet.Config. Pour plus d’informations, consultez https://aka.ms/nuget-https-everywhere.
Issue
myHttpSource est une source HTTP non sécurisée. Nous vous recommandons d’utiliser une source HTTPS à la place.
Solution
Option 1 : Mettre à jour la source pour utiliser HTTPS
Si possible, mettez à jour la source du package pour utiliser https:// au lieu de http://:
<configuration>
<packageSources>
<add key="SecureSource" value="https://example.com/nuget/" />
</packageSources>
</configuration>
Option 2 : Autoriser les connexions non sécurisées (si nécessaire)
Si la source doit rester HTTP, autorisez explicitement les connexions non sécurisées en ajoutant l’indicateur AllowInsecureConnections dans l'NuGet.Config:
<configuration>
<packageSources>
<add key="InsecureSource" value="http://example.com/nuget/" allowInsecureConnections="true" />
</packageSources>
</configuration>
Option 3 : Consulter le niveau d’analyse du Kit de développement logiciel (SDK)
La propriété SdkAnalysisLevel dans votre projet peut servir de solution de contournement temporaire pour la gestion des sources HTTP.
Si vous avez besoin de temps supplémentaire pour résoudre l’erreur HTTP, vous pouvez réduire la SdkAnalysisLevel pour supprimer temporairement les erreurs.
Voici comment il fonctionne :
- Pour la valeur de niveau d’analyse du SDK inférieure à 9.0.100, l’utilisation de sources HTTP déclenche un avertissement (NU1803).
- À compter du niveau d’analyse du SDK 9.0.100 ou version ultérieure, les sources HTTP entraînent une erreur (NU1302), sauf si
AllowInsecureConnectionsest explicitement activé.
Warning
La modification de SdkAnalysisLevel a d’autres effets secondaires. Reportez-vous à la SdkAnalysisLevel liste d’un résumé de l’étendue complète des fonctionnalités du Kit de développement logiciel (SDK) .NET affectées.
Scénario 2
Vous utilisez une source NuGet «https://contoso/v3/index.json » qui contient un point de terminaison de ressource d’index de service « HTTP » : «http://contoso/v3-flatcontainer/contoso/index.json ». Cela n’est pas sécurisé et n’est pas recommandé. Pour autoriser les ressources HTTP, vous devez définir explicitement « allowInsecureConnections » sur true dans votre fichier NuGet.Config. Pour plus d’informations, consultez https://aka.ms/nuget-https-everywhere.
Issue
Une source de package configurée utilise HTTPS, mais l’une de ses ressources (indiquée dans le message d’erreur) utilise HTTP.
NuGet nécessite que toutes les sources et leurs ressources utilisent HTTPS.
Si vous souhaitez continuer à utiliser cette source malgré sa ressource HTTP, vous devez définir l’indicateur allowInsecureConnections sur true dans votre fichier NuGet.config.
Pour en savoir plus sur les sources de package et les points de terminaison de ressources, consultez l’API Du serveur NuGet.
Option 1 : Mettre à jour la source pour utiliser HTTPS
Dans la mesure du possible, basculez vers une source de package qui fournit uniquement des ressources HTTPS. Il s’agit de l’option recommandée et la plus sécurisée.
Option 2 : Autoriser les connexions non sécurisées (si nécessaire)
Si vous devez utiliser la source, autorisez explicitement les connexions non sécurisées en ajoutant l’indicateur allowInsecureConnections dans :NuGet.Config
Pour plus d’informations sur la gestion du paramètre dans Visual Studio, consultez Options NuGet dans Visual Studio
<configuration>
<packageSources>
<add key="InsecureSource" value="https://contoso/v3/index.json" allowInsecureConnections="true" />
</packageSources>
</configuration>