NuGet 407 vs 401: proxyinloggning eller autentiseringsuppgifter för privat feed?
Separera NuGet-feedens autentiseringsuppgifter från autentiseringsuppgifterna för vidarebefordringsproxyn och granska konfigurationen som verktyget som faktiskt utför återställningen använder.
En NuGet-återställning kan kräva både ett vidarebefordringsproxykonto och ett konto för privat feed. Använd svaret för att avgöra vilken konfiguration du ska granska:
| Observation | Börja här |
|---|---|
| Proxyn returnerar 407 | Rutten och kontot som används för att nå vidarebefordringsproxyn |
| Paketkällan returnerar 401 | Feedens autentiseringskonfiguration |
| Anslutningen eller TLS misslyckas före ett svar | Underlaget för slutpunkten, transporten och certifikatet |
En feedtoken kan inte besvara proxyns 407. På samma sätt har ett anslutnings- eller TLS-fel före ett svar inte fastställt vilket lösenord som är fel.
Konfigurera proxyn separat från feeden
NuGets proxypost hör under config. För en rutt utan inbäddade autentiseringsuppgifter:
<configuration>
<config>
<add key="http_proxy" value="http://proxy.example:8080" />
</config>
</configuration>
Slå samman det här exemplet med den relevanta befintliga konfigurationen. För en offentlig feed där offentliga mellanhänder är tillåtna erbjuder listan över HTTP-proxyer en kandidat för denna rutt utan autentiseringsuppgifter. Håll paketkällor i deras egen sektion; att ersätta feedens URL med en generisk proxyadress ber mellanhanden om paket.
Det dokumenterade värdet http_proxy.password är krypterat. Använd de stödda konfigurationsverktygen i stället för att skriva klartext i det fältet eller kopiera ett kodat utseende värde från en annan maskin som om det vore ett portabelt autentiseringsformat.
Granska den återställning som faktiskt misslyckas
Namnge klienten, användaren och startmiljön och lokalisera sedan dess effektiva konfigurationshierarki. Inställningar för användare, dator och lösning kan bidra. En gammal devenv.exe.config-rättelse gäller en viss Visual Studio-process; den fastställer inte vad en kommandoradsåterställning eller byggtjänst läser. Bevara fungerande paketkällor och policy medan du lokaliserar en föråldrad proxyost.
När autentiseringen fungerar, följ varje senare misslyckad URL. Feedmetadata och paketinnehåll kan använda olika slutpunkter, så en enda accepterad begäran fastställer inte hela återställningsrutten. Bevara normal validering av paketsignatur och TLS medan du rättar detta.