L'en-tête HTTP Referer
indique la page web qui a mené un visiteur sur votre site. Bien que très utile pour l'analyse de trafic, il peut créer un risque pour la vie privée en dévoilant l'URL de la page précédente, qui peut parfois contenir des informations sensibles.
L'en-tête Referrer-Policy
vous permet de contrôler précisément cette information. Cette recette vous aide à configurer facilement cet en-tête de sécurité essentiel pour maîtriser les données que votre site partage avec des sites externes.
Pourquoi installer cette recette ?
Protéger la vie privée des utilisateurs : Limitez la diffusion d'informations de navigation sensibles, comme les URL de pages internes ou les paramètres de requête, vers des sites externes.
Renforcer la sécurité : Évitez les fuites d'URL contenant des informations sensibles (comme un lien de réinitialisation de mot de passe) vers des tiers.
Améliorer la conformité : Adopter une politique stricte est une bonne pratique qui s'aligne avec les réglementations sur la protection des données, comme le RGPD.
Choisir la bonne politique de référencement
Nom de la politique | Description |
---|---|
no-referrer |
N'envoie aucune information sur le Referer, ce qui améliore la confidentialité de l'utilisateur mais peut avoir un impact sur les données analytiques. |
no-referrer-when-downgrade |
Similaire à no-referrer mais uniquement lors du passage de https à http . Envoie l'URL complète du référent pour les requêtes effectuées au même niveau de sécurité (par exemple, https à https) et l'omet pour les requêtes inter-niveaux (par exemple, http à https). |
origin |
N'envoie que l'origine (schéma, hôte et port) de l'URL de référence. |
origin-when-cross-origin |
Envoie l'URL complète pour les requêtes de même origine et seulement l'origine pour les requêtes d'origine croisée. |
same-origin |
Envoie l'URL complète pour les requêtes de même origine et l'omet pour les requêtes d'origine croisée. |
strict-origin |
Envoie l'origine pour les requêtes effectuées au même niveau de sécurité (par exemple, https à https) et l'omet pour les requêtes croisées (par exemple, http à https). |
strict-origin-when-cross-origin |
Envoie l'URL complète pour les requêtes de même origine. Envoie l'origine uniquement pour les requêtes d'origine croisée au même niveau de sécurité (par exemple, https à https). Sinon, omet l'en-tête Referer. |
unsafe-url |
Envoie l'URL complète dans tous les cas. Nous ne conseillons pas d'utiliser cette politique, car elle est moins respectueuse de la vie privée. |
Quelle politique choisir ? Nos recommandations
- Maximum de confidentialité : Choisissez
no-referrer
. Aucune information n'est envoyée, mais cela peut affecter la précision de vos outils d'analyse. - Le meilleur équilibre (Recommandé) :
strict-origin-when-cross-origin
est le choix le plus courant. Il préserve la vie privée tout en partageant l'origine (le nom de domaine) avec les sites externes, ce qui est souvent utile. - Pour un usage interne :
same-origin
est une bonne option si vous voulez leReferer
uniquement pour la navigation au sein de votre propre site.
Quelques exemples
Cette matrice montre l'en-tête Referer envoyé par le navigateur pour différents scénarios, en fonction de la politique choisie, pour une navigation à partir d'une page située à l'URL https://example.com/page
.
Nom de la politique | Vers l'URL | En-tête Referer envoyée par le navigateur |
---|---|---|
no-referrer |
anywhere | Pas d'en-tête Referer |
no-referrer-when-downgrade |
http://example.com | Pas d'en-tête Referer |
no-referrer-when-downgrade |
https://example.com/other-page | Referer : https://example.com/page |
no-referrer-when-downgrade |
http://google.com | Pas d'en-tête Referer |
no-referrer-when-downgrade |
https://google.com | Referer : https://example.com/page |
origin |
anywhere | Referer : https://example.com/ |
origin-when-cross-origin |
http://example.com | Pas d'en-tête Referer |
origin-when-cross-origin |
https://example.com/other-page | Referer : https://example.com/page |
origin-when-cross-origin |
http://google.com | Referer : https://example.com/ |
origine-croisée |
https://google.com | Referer : https://example.com/ |
same-origin |
https://example.com/other-page | Referer : https://example.com/page |
same-origin |
http://example.com | Pas d'en-tête Referer |
same-origin |
https://google.com | Pas d'en-tête Referer |
strict-origin |
https://example.com/other-page | Referer : https://example.com/ |
strict-origin |
http://example.com/other-page | Pas d'en-tête Referer |
strict-origin |
https://google.com | Referer : https://example.com/ |
strict-origin |
http://google.com | Pas d'en-tête Referer |
strict-origin-when-cross-origin |
https://example.com/other-page | Referer : https://example.com/page |
strict-origin-when-cross-origin |
http://example.com/other-page | Pas d'en-tête Referer |
strict-origin-when-cross-origin |
https://google.com | Referer : https://example.com/ |
strict-origin-when-cross-origin |
http://google.com | Pas d'en-tête Referer |
unsafe-url |
anywhere | Referer : https://example.com/page |
Comment installer cette recette sur mon site ?
Pour installer cette recette sur votre site web, suivez les étapes suivantes :
- Choisissez la police : Sélectionner la politique de
Referrer-Policy
à appliquer. Vous trouverez plus d'informations sur les différentes politiques dans la section "Choisir la bonne politique de référencement". - Installez la recette : Cliquez sur le bouton d'installation. Une nouvelle règle sera automatiquement créée pour vous en mode "brouillon".
- Vérifiez la règle : etez un œil à la règle générée. Vous pouvez la modifier si besoin avant de la publier.
- Publier sur votre site : Une fois la règle validée, publiez-la. L'en-tête
Referrer-Policy
sera actif sur votre site d'ici quelques secondes.