WebProxy.UseDefaultCredentials lahko ponastavi izrecne poverilnice
Izogibajte se ponastavitvi izrecnega računa .NET proxy s poznejšo dodelitvijo UseDefaultCredentials.
To zaporedje je videti izrecno, vendar se v .NET 10 konča brez kakršnih koli poverilnic proxy:
proxy.Credentials = new NetworkCredential(proxyUser, proxyPassword);
proxy.UseDefaultCredentials = false;
V izvedbi WebProxy v .NET 10 nastavitev UseDefaultCredentials na false dodeli null v Credentials. Nastavitev na true izbere CredentialCache.DefaultCredentials. Obe lastnosti nadzorujeta isto izbiro računa.
Za račun, specifičen za storitev, dodelite predvidene poverilnice brez poznejše ponastavitve:
var proxy = new WebProxy("http://proxy.example.net:8080")
{
Credentials = new NetworkCredential(proxyUser, proxyPassword)
};
Če mora obstoječa koda za nastavitev izrecno izklopiti privzete poverilnice, storite to pred dodelitvijo NetworkCredential. Njegov getter je lahko false, medtem ko so izrecne poverilnice pravilno prisotne; false ne pomeni nujno, da ni konfiguriran noben račun.
Ta objekt pritrdite na obdelovalnik, ki izvede zahtevo. Za integrirano preverjanje pristnosti Windows namesto tega zavestno izberite privzete poverilnice z uporabo ustrezne identitete procesa.
Preverite vrstni red inicializatorja objekta in pomožne metode glede poznejših dodelitev, ki zamenjajo predvideni račun. To diagnostiko povežite z uporabljeno izvedbo WebProxy; istoimenska lastnost na obdelovalniku HTTP lahko upravlja drugo območje preverjanja pristnosti.