Starpniekservera sīkdatnes saglabāšana CONNECT pieprasījumā
Izmantojiet libcurl atsevišķo starpniekservera galveņu saskarni piegādātāja definētai CONNECT pieteikšanai, nevis uzskatiet galamērķa sīkdatni par starpniekservera autentifikāciju.
Daži starpniekservera produkti definē pieteikšanās plūsmu, kas nodrošina sīkdatni vai žetonu turpmākajiem starpniekservera pieprasījumiem. Ja šim žetonam jāparādās CONNECT, glabājiet to atsevišķi no sīkdatnēm, kas paredzētas tīmekļa vietnei tunelī.
libcurl nodrošina īpašu pielāgotu galveņu sarakstu starpniekserverim. Jau inicializētā C lietojumprogrammā konfigurācijas fragments var izskatīties šādi:
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);Tas ir piemērots tikai tad, ja dokumentētais starpniekservera pieteikšanās protokols pieprasa šo galveni. Pārbaudiet piešķiršanas un opciju rezultātus apkārtējā kodā, saglabājiet sarakstu, līdz pārsūtīšana ir pabeigta, pēc tam notīriet vai aizstājiet roktura rādītāju pirms saraksta atbrīvošanas.
Ar atsevišķu galveņu apstrādi libcurl sūta starpniekservera sarakstu CONNECT laikā un galamērķa sarakstu pieprasījumā izveidotajā tunelī. Tādējādi starpniekserveris saņem piegādātāja žetonu, bet šis žetons nekļūst par tīmekļa vietnes sīkdatni. Šī atdalīšana ir noklusējuma kopš libcurl 7.42.1; skaidrā opcija padara paredzēto uzvedību redzamu.
Pārlūkprogrammas sīkdatņu krūka ir cits mehānisms
libcurl sīkdatņu dzinēja iespējošana vai sīkdatnes iestatīšana galamērķim automātiski neatveido pārlūkprogrammas īpašo starpniekservera pieteikšanās plūsmu. CONNECT notiek pirms HTTPS apmaiņas ar galamērķi. Nosakiet produkta faktiskās prasības, nevis kopējiet uztverto vietnes sīkdatni katrā pieprasījumā.
Ja starpniekserveris izmanto standarta HTTP starpniekservera autentifikāciju, tā vietā izmantojiet libcurl starpniekservera akreditācijas datus un atbalstītās autentifikācijas opcijas. 407 ar Proxy-Authenticate ir cits protokols nekā HTML pieteikšanās lapa, kas atgriež sesijas žetonu.
Ierobežojiet žetonu ar tā starpniekservera galapunktu un paredzēto darbības laiku. Pārejot uz citu starpnieku, aizstājiet galveņu sarakstu kā daļu no šīs konfigurācijas izmaiņas. Vispārīgs pieprasījuma galveņu saraksts ir slikta vieta noslēpumam, kas pieder tikai vienam starpniekserverim.