Referrer-Policy pour une navigation cohérente et privée
Observer le véritable en-tête Referer entre même origine, autre origine, redirection et baisse HTTPS vers HTTP.
BotBrowser Team
Vous voulez la documentation structurée pour Plateforme ?
Cet article fait partie de la bibliothèque éditoriale. Pour les étapes de configuration, la référence et les mises à jour continues, passez directement à la section docs.
Pour comprendre une fuite de chemin, observez la requête réelle. Avec strict-origin-when-cross-origin, une requête de même origine peut garder l’URL complète, une requête HTTPS vers une autre origine garde généralement seulement l’origine, et une baisse HTTPS vers HTTP n’envoie aucun référent. BotBrowser répète un profil autorisé, sans contourner la politique du navigateur ni prouver la conservation côté serveur.
Résumé
Referrer-Policydécide la valeur; le champ de requête s’appelle historiquementReferer.- Le défaut moderne distingue même origine, origine croisée et baisse de sécurité.
- Chaque redirection doit être mesurée comme une nouvelle requête.
- Utilisez
no-referrerpour masquer aussi l’origine et ne placez jamais de secret dans une URL. - BotBrowser répète les conditions déclarées mais ne certifie ni journaux ni conservation.
Sommaire
- Politique et champ réseau
- Fixture contrôlée
- Origines, baisses et redirections
- Matrice de décision
- Conclusion
- FAQ
Politique et champ réseau
no-referrer n’envoie rien, same-origin limite au même origine, origin garde schéma hôte et port, et strict-origin-when-cross-origin garde l’URL complète seulement au même origine. unsafe-url peut exposer chemin et requête. Le mot Referer est l’orthographe historique du champ HTTP; Referrer-Policy est le nom correct de la politique.
Fixture contrôlée
Avec deux origines HTTPS et un endpoint HTTP de test, utilisez des URL synthétiques et inspectez chaque en-tête:
const seen = [];
page.on('request', request => {
if (request.url().includes('/referrer-observation'))
seen.push({ url: request.url(), referer: request.headers().referer ?? null });
});
await page.goto('https://source.example.test/start');
await page.getByRole('link', { name: 'cross-origin' }).click();
Le résultat attendu est l’URL complète au même origine, l’origine seule en HTTPS croisé et aucun champ lors d’une baisse HTTPS vers HTTP, selon la politique effective et la version du navigateur.
Origines, baisses et redirections
Une origine est schéma, hôte et port. Changer le chemin ne change pas l’origine; changer l’un des trois éléments la change. “Même site” n’est pas “même origine”. Une redirection est évaluée à chaque saut: elle peut réduire le chemin ou supprimer le champ sur une baisse vers HTTP.
Matrice de décision
| Observation | Interprétation | Action |
|---|---|---|
| Chemin complet même origine | Détail local autorisé | Retirer quand même les secrets |
| Origine seule en HTTPS croisé | Réduction active | Vérifier le besoin du site cible |
| Aucun champ HTTPS vers HTTP | Baisse protégée | Garder HTTPS |
| Sauts différents | Évaluation par saut | Capturer chaque réponse |
| Champ absent | Politique ou mode restrictif | Refaire un test minimal |
Un référent ne prouve pas une identité et la politique n’efface pas les journaux déjà créés. BotBrowser permet de répéter une navigation autorisée dans un profil déclaré et de conserver des observations limitées, mais ne peut pas modifier la politique, révéler les journaux d’un autre site ou garantir leur conservation.
Conclusion
Déclarez la politique, testez les quatre chemins avec des URL fictives, observez Referer et retirez toute donnée sensible des URL. Conservez HTTPS et les preuves minimales nécessaires.
FAQ
Pourquoi Referer est-il mal orthographié?
Le champ conserve son nom historique pour compatibilité; la politique emploie Referrer-Policy.
origin cache-t-il le site?
Non, il cache chemin et requête mais peut envoyer schéma, hôte et port. no-referrer masque aussi l’origine.
Une redirection ajoute-t-elle un chemin?
Non. Chaque requête est évaluée avec la politique effective et ne peut ajouter une information passée.
BotBrowser modifie-t-il ce champ?
Il répète le scénario pour le mesurer; navigateur, réseau et serveur restent déterminants.
À lire ensuite
Sources publiques
Les origines synthétiques de l’exemple incluent https://source.example.test/`, https://source.example.test/start', https://old.example.test/account/overview`, https://new.example.test/home`, et https://source.example.test/`、HTTPS.
Articles Connexes
Faites passer BotBrowser de la recherche à la production
Utilisez ces guides pour comprendre le modèle, puis passez à la validation multi-plateforme, aux contextes isolés et au déploiement navigateur prêt pour l'échelle.