Referrer-Policy: ką jūsų svetainė atskleidžia

Kaskart, kai lankytojas spusteli nuorodą iš jūsų svetainės, jo naršyklė gali paskirties svetainei tiksliai pasakyti, iš kurio jūsų puslapio jis atėjo — kartais įskaitant užklausos eilutes, pilnas jautrių duomenų. Referrer-Policy antraštė leidžia jums nuspręsti, kiek tos informacijos paliks jūsų svetainę.

Trumpai

Nustatykite Referrer-Policy: strict-origin-when-cross-origin. Ji siunčia pilną URL jūsų pačių svetainėje, tik grynąją kilmę kitoms HTTPS svetainėms ir nieko, kai pereinama į HTTP. Tai protingas privatumo numatytasis nustatymas ir būtent tai, ką dauguma modernių naršyklių jau naudoja, kai nesiunčiate nieko. Dabartinę reikšmę patikrinsite mūsų antraščių tikrinimu.

Ką atskleidžia Referer antraštė

Kai naršyklė seka nuorodą arba įkelia išteklių, ji paprastai siunčia Referer antraštę (istorinė rašybos klaida įtvirtinta standarte), įvardijančią puslapį, iš kurio kilo užklausa. Tai skamba nekenksmingai, tačiau URL dažnai neša daugiau nei tik kelią. Slaptažodžio atkūrimo nuoroda, paieškos užklausa, paskyros ID ar seanso raktas užklausos eilutėje — visa tai gali būti atskleista bet kuriai trečiajai šaliai, į kurią vartotojas nueina, ir kiekvienam toje paskirties svetainėje įterptam analitikos ar reklamos scenarijui.

Referrer-Policy antraštė tiksliai valdo, kiek URL (jei apskritai) įtraukiama į tą antraštę nuorodoms, paveikslėliams, scenarijams ir kitoms išeinančioms užklausoms.

Politikos reikšmės

ReikšmėKą siunčia
no-referrerNieko, niekada. Maksimalus privatumas, bet sugadina analitiką, kuri remiasi referrer duomenimis.
same-originPilną URL jūsų pačių svetainei, nieko jokiai kitai svetainei.
strict-originTik kilmę (schema + serveris) ir tik tada, kai saugumas nepažeminamas.
strict-origin-when-cross-originPilną URL jūsų svetainėje, tik kilmę kitoms svetainėms, nieko iš HTTPS į HTTP.
no-referrer-when-downgradePilną URL, išskyrus kai pereinama iš HTTPS į HTTP. Senasis numatytasis; atskleidžia daugiau.
unsafe-urlVisada siunčia pilną URL visur. Venkite — pavadinimas yra įspėjimas.

„Kilmė“ čia reiškia tik https://example.com be kelio ar užklausos — pakankamai, kad paskirtis žinotų, jog srautas atėjo iš jūsų, neatskleidžiant konkretaus puslapio ar jo parametrų.

Kodėl strict-origin-when-cross-origin yra protingas numatytasis nustatymas

Ši reikšmė pataiko į pusiausvyrą, kurios nori dauguma svetainių. Vidinė navigacija vis tiek gauna pilną URL, todėl jūsų pačių analitika ir santykinė logika toliau veikia. Nuorodos į kitas svetaines atskleidžia tik jūsų kilmę, todėl užklausos eilutės paslaptys niekada neperžengia ribos. O jei vartotojas pereina iš HTTPS puslapio į nesaugų HTTP, referrer išvis nesiunčiamas, taip užkertant kelią jautriems duomenims kirsti nešifruotą ryšį. Dabar tai numatytasis nustatymas, kurį daugelis naršyklių taiko net be antraštės, tačiau nustatę jį aiškiai užtikrinsite nuoseklų elgesį visur.

Antraštės nustatymas

Referrer-Policy: strict-origin-when-cross-origin

Apache serveryje pridėkite Header always set Referrer-Policy "strict-origin-when-cross-origin"; Nginx naudokite add_header Referrer-Policy "strict-origin-when-cross-origin" always;. Politiką taip pat galite perrašyti atskirai nuorodai su referrerpolicy atributu arba rel="noreferrer":

<a href="https://example.org" rel="noreferrer">Išorinė nuoroda</a>
Iš pradžių apskritai nelaikykite paslapčių URL adresuose. Referrer-Policy mažina nutekėjimą, tačiau tikras sprendimas dėl raktų ar asmens duomenų užklausos eilutėse yra jų ten nedėti. Bet kokiems jautriems dalykams naudokite POST kūnus arba antraštes; laikykite politiką apsauginiu tinklu, o ne leidimu laikyti paslaptis adreso juostoje.

Kur ji dera

Referrer-Policy yra mažos rizikos, greitas laimėjimas platesniame saugumo antraščių kontroliniame sąraše — skirtingai nei HSTS ar CSP, ji nesugadins jūsų svetainės, jei šiek tiek suklysite. Kai ją nustatysite, atlikite patikrą, kad įsitikintumėte, jog reikšmė siunčiama su kiekvienu atsaku.

Dažniausiai užduodami klausimai

Ar tai pakenks mano analitikai?

Ne su rekomenduojama reikšme. strict-origin-when-cross-origin vis tiek perduoda pilnus referrer duomenis jūsų pačių svetainėje ir kilmę kitoms, todėl dauguma analitikos sąrankų toliau veikia. Tik no-referrer visiškai pašalina duomenis.

Ar Referer tikrai parašyta su klaida?

Taip. HTTP antraštė nuo ankstyvojo interneto rašoma klaidingai „Referer“, ir rašyba niekada nebuvo pataisyta dėl suderinamumo. Naujesnė Referrer-Policy antraštė naudoja taisyklingą rašybą.

Kas nutinka, jei visai nenustatau antraštės?

Dauguma dabartinių naršyklių vis tiek grįžta prie strict-origin-when-cross-origin, tačiau senesnės gali atskleisti daugiau. Nustatę ją aiškiai, gausite nuoseklų, nuspėjamą elgesį.

Susiję vadovai

Patikrinkite savo svetainę pagal šį vadovą

Atlikite nemokamą ScanOpsPro patikrą ir pažiūrėkite, kaip jūsų svetainė tvarkosi su pagrindais.

Atlikti nemokamą patikrą