Esta secuencia parece explícita, pero en .NET 10 termina sin ninguna credencial de proxy:

proxy.Credentials = new NetworkCredential(proxyUser, proxyPassword);
proxy.UseDefaultCredentials = false;

En la implementación de WebProxy de .NET 10, asignar false a UseDefaultCredentials asigna null a Credentials. Asignar true selecciona CredentialCache.DefaultCredentials. Ambas propiedades controlan la misma elección de cuenta.

Para una cuenta específica de un servicio, asigne la credencial prevista sin un restablecimiento posterior:

var proxy = new WebProxy("http://proxy.example.net:8080")
{
    Credentials = new NetworkCredential(proxyUser, proxyPassword)
};

Si el código de configuración existente debe desactivar explícitamente las credenciales predeterminadas, hágalo antes de asignar NetworkCredential. Su getter puede ser false mientras una credencial explícita está presente correctamente; false no significa necesariamente que no haya ninguna cuenta configurada.

Adjunte este objeto al controlador que realiza la solicitud. Para la autenticación integrada de Windows, elija deliberadamente las credenciales predeterminadas, usando la identidad aplicable del proceso.

Revise el orden del inicializador de objetos y los métodos auxiliares por si hay asignaciones posteriores que reemplacen la cuenta prevista. Vincule este diagnóstico a la implementación de WebProxy en uso; una propiedad con el mismo nombre en un controlador HTTP puede regir un ámbito de autenticación distinto.

Artículos relacionados