Referrer-Policy in Drupal konfigurieren

Referrer-Informationen kontrollieren in Drupal — per seckit, EventSubscriber oder .htaccess. Verhindern Sie die Weitergabe sensibler URL-Informationen an Drittseiten.

Drupal · Schritt für Schritt

Referrer-Policy in Drupal

Referrer-Policy kontrolliert, welche Referrer-Informationen der Browser bei Navigation und Subresource-Requests weitergibt. Ohne diesen Header sendet der Browser die vollständige URL als Referrer — inklusive Query-Parameter, die Session-Tokens oder personenbezogene Daten enthalten können. Im Wolf-Agents Web Security Check bringt Referrer-Policy 10 von 166 Punkten.

Der empfohlene Wert strict-origin-when-cross-origin sendet bei Same-Origin-Requests die volle URL, bei Cross-Origin-Requests nur den Origin — und bei HTTPS-zu-HTTP-Downgrades gar nichts. In Drupal setzen Sie diesen Header per seckit, EventSubscriber oder .htaccess.

Der Wolf-Agents Web Security Check analysiert den Referrer-Policy-Header und bewertet den gesetzten Wert. Der Scanner warnt bei unsicheren Werten wie unsafe-url und empfiehlt die optimale Konfiguration für Ihre Drupal-Installation.

Implementierung

Alle drei Wege setzen denselben Header. seckit bietet ein Dropdown mit vordefinierten Werten, der EventSubscriber gibt volle Kontrolle, die .htaccess funktioniert ohne Drupal.

seckit
/admin/config/system/seckitEmpfohlen
# seckit: /admin/config/system/seckit → Tab "Various"
# Referrer-Policy Dropdown:
Auswahl: strict-origin-when-cross-origin

# Speichern → drush cr
EventSubscriber
ReferrerPolicySubscriber.phpCustom
<?php
// modules/custom/security_headers/src/EventSubscriber/ReferrerPolicySubscriber.php

namespace Drupal\security_headers\EventSubscriber;

use Symfony\Component\EventDispatcher\EventSubscriberInterface;
use Symfony\Component\HttpKernel\Event\ResponseEvent;
use Symfony\Component\HttpKernel\KernelEvents;

class ReferrerPolicySubscriber implements EventSubscriberInterface {

  public static function getSubscribedEvents() {
    return [KernelEvents::RESPONSE => ['onResponse', 0]];
  }

  public function onResponse(ResponseEvent $event) {
    $response = $event->getResponse();
    $response->headers->set('Referrer-Policy',
      'strict-origin-when-cross-origin');
  }
}
.htaccess
.htaccessFallback
# .htaccess — Referrer-Policy
<IfModule mod_headers.c>
  Header always set Referrer-Policy "strict-origin-when-cross-origin"
</IfModule>

Verifizierung

Cache leeren und Header per curl prüfen.

TerminalVerifizierung
# Cache leeren und Header prüfen
drush cr
curl -sI https://ihre-domain.de | grep -i referrer-policy

# Erwartete Ausgabe:
# referrer-policy: strict-origin-when-cross-origin

Häufige Fehler

no-referrer bricht Analytics

no-referrer unterdrückt alle Referrer-Informationen. Google Analytics, Matomo und andere Tools erhalten keine Referrer-Daten mehr. Nutzen Sie stattdessen strict-origin-when-cross-origin.

Internal Page Cache liefert gecachte Header

Nach Änderungen am Referrer-Policy-Header den Cache mit drush cr leeren. Ohne Cache Rebuild liefert der Internal Page Cache den alten Header aus.

Affiliate-Links verlieren Tracking

Bei no-referrer oder same-origin erhalten Affiliate-Partner keine Referrer-Information. Nutzen Sie UTM-Parameter statt Referrer-basiertem Tracking.

seckit und EventSubscriber setzen Header doppelt

Wenn seckit den Referrer-Policy-Header setzt und gleichzeitig ein EventSubscriber aktiv ist, erscheint der Header doppelt. Nutzen Sie nur eine der beiden Methoden — deaktivieren Sie die seckit-Einstellung, wenn ein EventSubscriber vorhanden ist.

Compliance-Relevanz

Referrer-Policy unterstützt das Prinzip der Datenminimierung, indem nur die notwendigen Informationen bei Cross-Origin-Requests weitergegeben werden.

NIS2Art. 21(e) — Sicherheit bei Entwicklung und Wartung von Informationssystemen
DSGVOArt. 5 — Datenminimierung: Nur notwendige Informationen weitergeben

Zusammenfassung

Referrer-Policy in Drupal lässt sich am einfachsten per seckit konfigurieren — ein Dropdown-Menü mit vordefinierten Werten. Der empfohlene Wert strict-origin-when-cross-origin bietet die optimale Balance zwischen Datenschutz und Funktionalität. Nutzen Sie nur eine der drei Methoden (seckit, EventSubscriber, .htaccess), um doppelte Header zu vermeiden.

Wie steht Ihre Domain bei Referrer-Policy?

Prüfen Sie es jetzt — kostenlos, ohne Registrierung, mit 166 Prüfpunkte.