DefaultCredentials nu transformă autentificarea Windows într-o parolă Basic
Aliniați contextul de securitate implicit al .NET la schema de autentificare a proxy-ului în loc să așteptați ca un cont Basic salvat în browser să apară automat.
Browserul reține un cont de proxy. Clientul .NET folosește CredentialCache.DefaultCredentials și primește 407 fără reîncercarea la care vă așteptați. Aceste două fapte sunt compatibile.
DefaultCredentials reprezintă contextul de securitate curent pentru autentificarea integrată acceptată. Microsoft documentează aplicabilitatea sa la NTLM, Negotiate și Kerberos. Nu este o cerere de a extrage un nume de utilizator și o parolă în text clar din autentificările salvate în browser.
Dacă proxy-ul oferă Basic și solicită un cont separat, configurați acel cont prin interfața de acreditări a proxy-ului pe care o acceptă clientul. Un NetworkCredential explicit și contextul de securitate Windows curent sunt intrări diferite.
Verificați provocarea anunțată înainte de a schimba parola. Verificați și ce context de utilizator rulează aplicația. Un executabil de desktop și un serviciu pot avea identități diferite chiar dacă sunt pornite pe același computer.
Nu există niciun motiv să copiați contul și în proprietatea de acreditări a destinației. Păstrați autentificarea intermediarului la intermediar. Diagnosticul util numește trei lucruri: proxy-ul ales, schema pe care o solicită și tipul de acreditare pe care aplicația l-a furnizat efectiv.