Aller au contenu principal
Security Headers Scanner
L'observatoire des en-têtes de
sécurité de vos sites internet
Analyses totales 15210
Score moyen 38,70
Sites analysés 2013
Meilleur score 155

Referrer-Policy

Contrôler les informations sur la page d’origine que le navigateur peut transmettre lorsqu’un utilisateur navigue vers une autre ressource.

Comprendre Referrer-Policy

Lorsque vous cliquez sur un lien ou qu’une page charge une ressource externe, le navigateur peut indiquer au site destinataire d’où vient la visite.

Cette information est appelée le référent, ou referrer en anglais.

Referrer-Policy permet au site de décider quelle quantité d’informations le navigateur peut transmettre.

Selon la politique choisie, il peut transmettre :

  • l’adresse complète de la page précédente ;
  • uniquement l’origine du site, par exemple https://example.com/ ;
  • ou aucune information.

Pourquoi est-ce important ?

Une URL peut parfois contenir beaucoup plus qu’un simple nom de page.

Elle peut par exemple contenir :

  • des termes de recherche ;
  • des identifiants techniques ;
  • des paramètres internes ;
  • ou d’autres informations qui n’ont pas besoin d’être communiquées à un site externe.

Referrer-Policy permet donc de limiter les informations partagées inutilement et de mieux protéger la confidentialité des utilisateurs.

Configurer Referrer-Policy

Le serveur peut transmettre un en-tête HTTP nommé :

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

Le navigateur applique ensuite cette règle lorsqu’il doit transmettre l’en-tête HTTP Referer lors d’une nouvelle requête.

La politique strict-origin-when-cross-origin permet notamment de conserver davantage d’informations lors des échanges au sein d’une même origine, tout en limitant ce qui est communiqué lorsqu’une requête part vers un autre site.

Les principales politiques

no-referrer

Aucune information concernant la page d’origine n’est transmise.

same-origin

Le référent est transmis uniquement lorsque la requête reste sur la même origine.

origin

Seule l’origine du site est transmise, par exemple https://example.com/, sans le chemin complet de la page.

strict-origin

L’origine est transmise lorsque le niveau de sécurité de la connexion est conservé, par exemple de HTTPS vers HTTPS.

strict-origin-when-cross-origin

Conserve davantage d’informations pour les requêtes vers la même origine, mais ne transmet généralement que l’origine vers un autre site.

unsafe-url

Transmet davantage d’informations, notamment l’URL complète dans de nombreuses situations. Cette politique est plus permissive et expose davantage les informations de navigation.

Comprendre ce qui peut être transmis

Même site ou autre site

Une politique peut faire la différence entre une navigation vers une page de la même origine et une navigation vers un autre site.

Imaginons qu’un utilisateur consulte :

https://example.com/compte/profil

Lorsqu’il navigue vers une autre page de example.com, une politique peut autoriser la transmission de davantage d’informations.

En revanche, s’il quitte le site pour aller vers autre-site.fr, le navigateur peut ne transmettre que :

https://example.com/

Le site externe sait alors d’où vient la visite, mais ne connaît pas forcément la page exacte précédemment consultée.

Un exemple avec une recherche

Imaginons maintenant que l’utilisateur consulte :

https://example.com/recherche?q=ordinateur

Sans politique suffisamment protectrice, l’adresse complète pourrait être transmise à un site externe lorsque l’utilisateur clique sur un lien ou lorsqu’une ressource distante est chargée.

Le site externe pourrait alors apprendre que l’utilisateur recherchait ordinateur.

Avec une politique plus restrictive, il peut ne recevoir que :

https://example.com/

L’objectif est donc simple : ne transmettre à un autre site que les informations réellement nécessaires.

Bonnes pratiques et limites

Bonnes pratiques

  • Définir explicitement une Referrer-Policy adaptée au fonctionnement du site.
  • Éviter de transmettre inutilement l’URL complète lors d’une navigation vers un autre site.
  • Limiter au maximum les informations communiquées à des domaines externes.
  • Éviter de placer des informations sensibles directement dans les URLs.
  • Vérifier les besoins réels des services externes, outils de statistiques, contenus intégrés ou partenaires.

Toutes les URLs ne présentent pas le même risque

Une adresse publique comme :

https://example.com/actualites/article-1

est généralement moins sensible qu’une URL contenant des informations personnelles, une recherche, des identifiants techniques ou des paramètres internes.

Cela ne signifie pas qu’il faut transmettre systématiquement toutes les URLs publiques. Le principe reste de ne partager que ce qui est nécessaire.

Ce que Referrer-Policy ne remplace pas

Referrer-Policy constitue une protection importante pour la confidentialité, mais elle ne protège pas à elle seule toutes les données de l’utilisateur.

Elle ne remplace notamment pas :

  • HTTPS ;
  • la protection des données personnelles ;
  • une gestion sécurisée des cookies et des sessions ;
  • une conception correcte des URLs évitant d’y placer inutilement des informations sensibles.

Une politique Referrer-Policy correctement définie permet donc de réduire les informations que le navigateur révèle inutilement à d’autres sites et doit faire partie des protections mises en place sur un site web.

À retenir : Referrer-Policy permet de contrôler ce que le navigateur révèle sur la page précédemment consultée.
Une politique adaptée permet de conserver les informations nécessaires au fonctionnement du site tout en évitant de transmettre inutilement des URLs, paramètres ou informations de navigation à des services externes.