Neki proxy proizvodi definiraju tok prijave koji daje kolačić ili token za sljedeće proxy zahtjeve. Ako se taj token mora pojaviti na CONNECT-u, držite ga odvojeno od kolačića namijenjenih web stranici unutar tunela.

libcurl pruža namjenski popis prilagođenih zaglavlja za proxy. U već inicijaliziranoj C aplikaciji fragment konfiguracije može izgledati ovako:

struct curl_slist *proxy_headers = NULL;
proxy_headers = curl_slist_append(proxy_headers,
    "Cookie: ProxySession=REPLACE_WITH_PROXY_TOKEN");
curl_easy_setopt(handle, CURLOPT_PROXYHEADER, proxy_headers);
curl_easy_setopt(handle, CURLOPT_HEADEROPT,
                 (long) CURLHEADER_SEPARATE);

Ovo je prikladno samo kada dokumentirani protokol prijave proxyja zahtijeva to zaglavlje. Provjerite rezultate dodjele i opcija u okolnom kodu, zadržite popis dok se prijenos ne završi, a zatim očistite ili zamijenite pokazivač ručke prije oslobađanja popisa.

Sa zasebnim rukovanjem zaglavljima, libcurl šalje proxy popis na CONNECT, a popis odredišta na zahtjevu unutar uspostavljenog tunela. Proxy tako prima token proizvođača, a da taj token ne postaje kolačić web stranice. Ovo razdvajanje zadano je od libcurl 7.42.1; eksplicitna opcija čini namjeravano ponašanje vidljivim.

Kutija kolačića preglednika drugi je mehanizam

Omogućavanje libcurlova mehanizma kolačića ili postavljanje kolačića za odredište ne reproducira automatski vlastiti tok prijave proxyja u pregledniku. CONNECT se događa prije HTTPS razmjene s odredištem. Utvrdite stvarne zahtjeve proizvoda umjesto da kopirate uhvaćeni kolačić stranice u svaki zahtjev.

Ako proxy koristi standardnu HTTP proxy autentifikaciju, koristite umjesto toga libcurlove proxy vjerodajnice i podržane opcije autentifikacije. 407 s Proxy-Authenticate je drugačiji protokol od HTML stranice za prijavu koja vraća token sesije.

Ograničite token na njegovu proxy krajnju točku i predviđeni životni vijek. Pri prelasku na drugi posrednik, zamijenite popis zaglavlja kao dio te promjene konfiguracije. Opći popis zaglavlja zahtjeva loše je mjesto za tajnu koja pripada samo jednom proxyju.

Povezani članci