Tato posloupnost vypadá explicitně, ale v .NET 10 končí bez jakýchkoli přihlašovacích údajů proxy:

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

V implementaci WebProxy v .NET 10 přiřazuje nastavení UseDefaultCredentials na false hodnotu null do Credentials. Nastavení na true vybírá CredentialCache.DefaultCredentials. Obě vlastnosti řídí stejnou volbu účtu.

Pro účet specifický pro službu přiřaďte zamýšlené přihlašovací údaje bez pozdějšího zrušení:

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

Pokud musí stávající kód nastavení explicitně vypnout výchozí přihlašovací údaje, udělejte to před přiřazením NetworkCredential. Jeho getter může být false, i když jsou explicitní přihlašovací údaje správně přítomny; false nutně neznamená, že není nakonfigurován žádný účet.

Připojte tento objekt k obslužné rutině, která požadavek provádí. Pro integrované ověřování Windows místo toho záměrně zvolte výchozí přihlašovací údaje s použitím příslušné identity procesu.

Zkontrolujte pořadí inicializátoru objektu a pomocné metody kvůli pozdějším přiřazením, která nahrazují zamýšlený účet. Svažte tuto diagnostiku s používanou implementací WebProxy; stejnojmenná vlastnost na obslužné rutině HTTP může řídit jiný rozsah ověřování.

Související články