Eksplicitni vjerodajni podaci za .NET WebProxy
Dodijelite vjerodajne podatke eksplicitno pri izradi .NET WebProxy, umjesto da pretpostavljate da URI s vjerodajnim podacima popunjava njegov račun.
URI može sadržavati username:password prije svog hosta. To ne znači da svaki .NET API koji prihvaća taj URI kopira korisničke podatke u objekt za autentifikaciju.
Kada WebProxy izrađujete izravno, učinite dodjelu vjerodajnih podataka eksplicitnom:
var proxy = new WebProxy("http://203.0.113.10:8080")
{
Credentials = new NetworkCredential(proxyUser, proxyPassword)
};Varijable endpointa i računa su ilustrativne. Time se adresa odredišta, adresa proxyja i proxy račun drže odvojenima.
Ako format unosa daje URL s vjerodajnim podacima, svjesno parsirajte njegove korisničke podatke. Sačuvajte lozinku koja sadrži dvotočke dijeljenjem samo na separatoru vjerodajnih podataka i dekodirajte kodirane komponente u odgovarajućoj fazi. Izbjegavajte ispisivanje izvornog URL-a dok dijagnosticirate taj parser.
Proxy URL koji radi kao postavka okruženja može se ponašati drugačije kada se proslijedi drugom konstruktoru. Inicijalizacija proxyja iz okruženja ima vlastitu logiku parsiranja; to nije obećanje da svaki konstruktor troši ista polja.
Na kraju, postavite konfigurirani proxy objekt na rukovatelja koji izvršava zahtjev. Ispravni vjerodajni podaci na nekorištenom WebProxy ne mogu utjecati na vezu.