Clear-Site-Data: Browser-Daten sicher löschen
Ein HTTP-Header, der beim Logout alle Cookies, Caches und Storage-Daten im Browser löscht — sicherer als manuelles Cookie-Löschen und in 10 Minuten implementiert.
Was ist Clear-Site-Data?
Clear-Site-Data löscht beim Logout sämtliche Browser-Daten Ihrer Website mit einem einzigen HTTP-Header — Cookies, localStorage, sessionStorage, IndexedDB, Cache und Service Worker. Er ist das ideale Werkzeug für sichere Logout-Implementierungen: Ein einziger Header ersetzt das fehleranfällige manuelle Löschen einzelner Cookies und Storage-Einträge. Der Wolf-Agents Web Security Check prüft Clear-Site-Data als Teil der 166 Prüfpunkte.
Der Header wird ausschließlich auf Logout-Endpoints gesetzt, nicht auf normalen Seiten. Auf einer regulären Seite würde Clear-Site-Data die aktive Session des Nutzers sofort zerstören. Richtig eingesetzt verhindert er, dass nach dem Logout personenbezogene Daten im Browser zurückbleiben — besonders kritisch an Shared Devices in Hotels, Bibliotheken oder Kiosken.
Session-Übernahme nach Logout
Ohne Clear-Site-Data bleiben nach dem Logout personenbezogene Daten im Browser. An Shared Devices kann der nächste Nutzer diese Daten über die DevTools einsehen oder eine Race Condition ausnutzen.
Nutzer loggt sich ein
Am Hotel-Business-Center — der Browser speichert Session-Cookies, localStorage-Daten mit Profil und IBAN, sessionStorage mit der letzten Transaktion.
Logout ohne Clear-Site-Data
Der Server invalidiert die Session serverseitig und setzt den Session-Cookie auf abgelaufen. Aber: localStorage, sessionStorage und Cache bleiben unberührt.
Nächster Nutzer öffnet DevTools
Application-Tab → Local Storage: Profilname, IBAN, letzte Transaktion — alles lesbar. Bei einer Race Condition sogar die Session wiederherstellbar.
# Der Browser löscht sofort alle Daten dieser Origin
Clear-Site-Data: "cache", "cookies", "storage" Der nächste Nutzer findet einen sauberen Browser vor — keine Cookies, kein Storage, kein Cache.
Verfügbare Direktiven
Jede Direktive löscht einen bestimmten Speicherbereich. Die Werte müssen in Anführungszeichen stehen — "cache" ist korrekt, cache ohne Anführungszeichen wird ignoriert.
| Direktive | Löscht | Details |
|---|---|---|
"cache" | HTTP-Cache | Prefetch, bfcache, WebGL Shader, compiled JS |
"cookies" | Alle Cookies | Gesamte Domain inkl. Subdomains + HTTP-Auth |
"storage" | Web Storage | localStorage, sessionStorage, IndexedDB, Service Workers |
"*" | Alles | Alle obigen + zukünftige Typen — für Notfall-Reset |
Empfohlene Verwendung
"cache", "cookies", "storage" "cookies", "storage" "*" Clear-Site-Data auf normalen Seiten (Homepage, Dashboard) zerstört die aktive Session. Beschränken Sie den Header ausschließlich auf Logout-, Passwort-Änderungs- und Account-Löschungs-Endpoints.
Browser-Support
Clear-Site-Data wird von allen modernen Chromium-basierten Browsern vollständig unterstützt. Firefox hat Einschränkungen bei der "cache"-Direktive. Implementieren Sie einen JavaScript-Fallback für ältere Browser.
| Browser | cache | cookies | storage |
|---|---|---|---|
| Chrome 61+ | Ja | Ja | Ja |
| Edge 79+ | Ja | Ja | Ja |
| Firefox 63+ | Teilweise | Ja | Ja |
| Safari 17+ | Ja | Ja | Ja |
Firefox: Die "cache"-Direktive wurde in v94 entfernt und erst in v138 wiederhergestellt. Globale Abdeckung: ca. 94%.
JavaScript-Fallback für ältere Browser
// Client-seitiger Fallback für Browser ohne Clear-Site-Data
localStorage.clear();
sessionStorage.clear();
// IndexedDB löschen
indexedDB.databases().then(dbs =>
dbs.forEach(db => indexedDB.deleteDatabase(db.name))
);
// Service Worker deregistrieren
navigator.serviceWorker?.getRegistrations()
.then(regs => regs.forEach(r => r.unregister()));
// Caches leeren
caches?.keys().then(names =>
names.forEach(name => caches.delete(name))
); Best Practices und Compliance
Clear-Site-Data allein reicht nicht — kombinieren Sie den Header mit serverseitiger Session-Invalidierung und einem Redirect für einen vollständig sicheren Logout. Regulatorisch erfüllt Clear-Site-Data Anforderungen aus DSGVO Art. 32 (Sicherheit der Verarbeitung — Verhinderung unbefugten Zugriffs auf Session-Daten), DSGVO Art. 17 (Recht auf Löschung — clientseitige Datenlöschung bei Account-Löschung) und dem OWASP Session Management Cheat Sheet (vollständige Bereinigung bei Session-Beendigung).
- Immer mit Cache-Control kombinieren:
Cache-Control: no-storeverhindert, dass die Logout-Response selbst gecacht wird. - Session serverseitig invalidieren: Clear-Site-Data ist clientseitig — der Server muss die Session zusätzlich in der Datenbank als ungültig markieren.
- POST statt GET für Logout: Verhindert CSRF-Angriffe durch automatisch geladene GET-Requests über
<img>-Tags oder Links. - Redirect nach dem Logout: Der Clear-Site-Data Header muss in der Response enthalten sein — erst der Browser-Empfang löst die Löschung aus.
- Nur HTTPS: Clear-Site-Data funktioniert ausschließlich über HTTPS. Auf HTTP-Verbindungen wird der Header vom Browser ignoriert.
Wie steht Ihre Domain bei Clear-Site-Data?
Prüfen Sie es jetzt — kostenlos, ohne Registrierung, mit 166 Prüfpunkte.
Häufig gestellte Fragen
Was ist der Clear-Site-Data Header?
Clear-Site-Data ist ein HTTP-Response-Header, der den Browser anweist, alle gespeicherten Daten einer Website zu löschen — Cookies, localStorage, sessionStorage, IndexedDB, Cache und Service Worker. Er wird ausschließlich auf Logout-Endpoints gesetzt, um eine vollständige clientseitige Bereinigung bei der Session-Beendigung sicherzustellen.
Warum reicht Set-Cookie mit abgelaufenem Datum nicht für einen sicheren Logout?
Set-Cookie mit einem vergangenen Ablaufdatum löscht nur den einen benannten Cookie. Daten in localStorage, sessionStorage, IndexedDB, Cache und Service Worker bleiben erhalten. Am nächsten Shared Device (Hotel, Bibliothek) kann der Folgenutzer diese Daten über die DevTools einsehen. Clear-Site-Data löscht alle Speicherbereiche in einem Schritt.
Kann Clear-Site-Data meine Website kaputt machen?
Ja — wenn Sie den Header auf normalen Seiten statt nur auf dem Logout-Endpoint setzen. Clear-Site-Data löscht alle Cookies, Storage und Cache der gesamten Origin. Auf einer normalen Seite würde das die aktive Session des Nutzers sofort zerstören. Beschränken Sie den Header ausschließlich auf Logout- und Passwort-Änderungs-Endpoints.
Welche Browser unterstützen Clear-Site-Data?
Chrome (ab Version 61), Edge (ab 79) und Firefox (ab 63, mit Einschränkungen bei der cache-Direktive) unterstützen Clear-Site-Data. Safari hat seit Version 17 experimentelle Unterstützung. Die globale Abdeckung liegt bei ca. 94%. Implementieren Sie einen clientseitigen JavaScript-Fallback für ältere Browser.
Wie viele Punkte bringt Clear-Site-Data im Wolf-Agents Web Security Check?
Clear-Site-Data wird mit bis zu 3 Punkten im Wolf-Agents Web Security Check bewertet. Geprüft wird, ob der Header auf dem Logout-Endpoint gesetzt ist und ob alle relevanten Direktiven (cache, cookies, storage) enthalten sind. Das Kapitel ist als Anfänger-Schwierigkeit eingestuft — die Implementierung dauert 10 bis 15 Minuten.
Ist Clear-Site-Data für DSGVO-Compliance relevant?
Ja. Bei einer Kontolöschung nach DSGVO Art. 17 (Recht auf Löschung) ergänzt Clear-Site-Data die serverseitige Datenlöschung durch eine vollständige clientseitige Bereinigung. Auch Art. 32 (Sicherheit der Verarbeitung) wird bedient: Der Header verhindert, dass personenbezogene Daten nach dem Logout im Browser verbleiben.