NuGet 407 vs 401: login do proxy ou credenciais do feed privado?
Separe as credenciais do feed NuGet das credenciais do proxy de saída e inspecione a configuração usada pela ferramenta que realmente executa a restauração.
Uma restauração do NuGet pode exigir tanto uma conta de proxy de saída quanto uma conta de feed privado. Use a resposta para decidir qual configuração inspecionar:
| Observação | Comece aqui |
|---|---|
| O proxy retorna 407 | A rota e a conta usadas para alcançar o proxy de saída |
| A origem do pacote retorna 401 | A configuração de autenticação do feed |
| A conexão ou o TLS falha antes de uma resposta | As evidências do endpoint, do transporte e do certificado |
Um token do feed não pode responder ao 407 do proxy. Da mesma forma, uma falha de conexão ou de TLS antes de uma resposta não estabeleceu qual senha está errada.
Configure o proxy separadamente do feed
A entrada de proxy do NuGet pertence a config. Para uma rota sem credenciais incorporadas:
<configuration>
<config>
<add key="http_proxy" value="http://proxy.example:8080" />
</config>
</configuration>
Mescle este exemplo à configuração existente apropriada. Para um feed público onde intermediários públicos são permitidos, a lista de proxies HTTP oferece um candidato para esta rota sem credenciais. Mantenha as origens de pacotes na sua própria seção; substituir a URL do feed por um endereço de proxy genérico pede os pacotes ao intermediário.
O valor documentado http_proxy.password é criptografado. Use as ferramentas de configuração compatíveis em vez de escrever texto simples nesse campo ou copiar de outra máquina um valor que parece codificado como se fosse um formato de credenciais portátil.
Inspecione a restauração que realmente falha
Nomeie o cliente, o usuário e o ambiente de inicialização e, em seguida, localize sua hierarquia efetiva de configuração. Definições de usuário, máquina e solução podem contribuir. Uma correção antiga de devenv.exe.config diz respeito a um processo específico do Visual Studio; não estabelece o que uma restauração de linha de comando ou um serviço de build lê. Preserve as origens de pacotes e as políticas que funcionam enquanto localiza uma entrada de proxy obsoleta.
Depois que a autenticação funcionar, siga qualquer URL que falhe mais adiante. Os metadados do feed e o conteúdo dos pacotes podem usar endpoints diferentes, portanto uma única requisição aceita não estabelece a rota completa de restauração. Preserve a validação normal de assinaturas de pacotes e de TLS enquanto corrige isso.