Referrer-Policy

Referrer-Policy

Hlavička umožňuje kontrolovat a omezit hodnotu v záhlaví Referrer při odkazování na jiné stránky.

Záhlaví Referrer je přiřazováno požadavkům vytvořeným v dokumentu a také pro navigaci mimo tento dokument. Záhlaví odkazů lze potlačit pomocí nastavení "noreferrer". Referrer-Policy bylo navrženo, aby mohla politika Referrer nabídnout více možností a větší bezpečnost.

Proč používat Referrer-Policy

Nastavení Referrer-Policy zvažte podle potřeb, obsahu webu a kolik informací chcete "pouštět" mimo vaše webové stránky. Správné nastavení může chránit uživatele před zjistěním identity na sociálních sítích při sdílení odkazů nebo omezit dostupné informace pro různé analytické služby.

Definice hlavičky Referrer-Policy

Hlavička Referer bude zcela vynechána
Referrer-Policy: no-referrer

Žádná informace Referrer nebude odeslána společně s žádostí.

Omezení na úroveň protokolu zabezpečení
Referrer-Policy: no-referrer-when-downgrade

Výchozí chování prohlížeče v případě, že není nastavena jiná politika. Adresa URL je odeslána jako referrer, pokud úroveň ptotokolu zůstává stejná (HTTP → HTTP, HTTPS → HTTPS). Neodešle se do méně bezpečného cíle (HTTPS → HTTP), ale také i na vyšší zabezpečení (HTTP → HTTPS).

Refferer pouze jako origin (hlavní doména)
Referrer-Policy: origin

Prohlížeč vždy nastaví záhlaví refferer jako origin (hlavní doména). Tím se omezí jakékoliv informace z URL. Stránka https://domenaxyz.cz/page.html odešle referrer https://domenaxyz.cz/. Nerozlišuje se HTTPS a HTTP.

Referrer-Policy: strict-origin

Stejné vlastnosti jako příkaz "origin", hlavička referrer se pošle pouze v případě pokud úroveň zabezpečení protokolů zůstane stejná (HTTPS → HTTPS) nebo vyšší (HTTP → HTTPS). Referrer se neodešle na nižší úroveň zabezpečení (HTTPS → HTTP).

Referrer pouze na origin (hlavní doména)
Referrer-Policy: same-origin

Záhlaví referrer bude odesláno pouze na stejnou doménu (same-origin), ale na jiné domény referrer nebude obsahovat žádné informace (no-referrer).

Omezení na úrovni domény
Referrer-Policy: origin-when-cross-origin

Odeslání úplné adresy URL při provádění požadavku na stejné doméně (same-origin). Mimo doménu se odešle pouze origin (hlavní doména). Při nižší úrovni zabezpečení (HTTPS → HTTP) se odešle pouze origin.

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

Podobné vlastnosti jako příkaz "origin-when-cross-origin". U odkazu na nižší úroveň zabezpečení (HTTPS → HTTP) se nepředá žádné záhlaví do méně bezpečného cíle (no-referrer).

Odesílání kompletní URL
Referrer-Policy: unsafe-url

Vždy se odešle celá adresa URL jako referrer na libovolnou žádost. Zvažte vždy nutnost tohoto nastavení.

Nastavení Referrer-Policy

.htaccess
# Referrer-Policy settings
Header always set Referrer-Policy "strict-origin-when-cross-origin"
Nginx
add_header 'Referrer-Policy' 'origin';

Užitečné zdroje