URI može sadržavati username:password prije svog hosta. To ne znači da svaki .NET API koji prihvata taj URI kopira korisničke podatke u objekt za provjeru identiteta.

Kada WebProxy kreirate direktno, učinite dodjelu akreditiva 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 odvojenim.

Ako format unosa daje URL s akreditivima, svjesno parsirajte njegove korisničke podatke. Sačuvajte lozinku koja sadrži dvotačke dijeljenjem samo na separatoru akreditiva i dekodirajte kodirane komponente u odgovarajućoj fazi. Izbjegavajte ispisivanje originalnog 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 objekat na rukovalac koji izvršava zahtjev. Ispravni akreditivi na nekorištenom WebProxy ne mogu uticati na vezu.

Povezani članci