Security Header als Datenschutz-Tool: CSP, HSTS und Permissions-Policy
Security Header als präventive Datenschutz-Maßnahmen
HTTP-Security-Header werden traditionell zur Abwehr von XSS und Man-in-the-Middle-Angriffen eingesetzt. Ihre Rolle als Datenschutz-Instrumente gemäß Art. 25 Abs. 1 DSGVO (Privacy by Design) wird jedoch oft übersehen. Content Security Policy (CSP), HTTP Strict Transport Security (HSTS) und Permissions-Policy können unerlaubte Datenübertragungen technisch verhindern und damit die Rechenschaftspflicht nach Art. 5 Abs. 2 DSGVO unterstützen.
Diese Header wirken als technische Schutzmaßnahmen, die bereits auf HTTP-Protokollebene greifen – bevor JavaScript-Code ausgeführt oder Verbindungen zu Drittanbietern aufgebaut werden können.
Content Security Policy: Technische Kontrolle über Datenflüsse
CSP definiert über die HTTP-Header Content-Security-Policy erlaubte Quellen für verschiedene Ressourcentypen. Für Datenschutz-Compliance sind besonders die Direktiven connect-src und script-src relevant.
Eine restriktive CSP-Konfiguration wie script-src 'self'; connect-src 'self' verhindert technisch das Laden von Tracking-Skripten Dritter und AJAX-Requests an externe Domänen. Dies unterstützt die Einhaltung der Zweckbindung nach Art. 5 Abs. 1 lit. b DSGVO, da unbeabsichtigte Datenübertragungen an Dritte ausgeschlossen werden.
Besonders relevant: Die CSP-Direktive report-uri dokumentiert Verstöße automatisch. Diese Logs können als technischer Nachweis dienen, dass keine unerlaubten Verbindungen zu Tracking-Diensten stattgefunden haben – ein wichtiger Baustein für die Rechenschaftspflicht.
Praktische CSP-Implementierung für Datenschutz
Für DSGVO-konforme Websites sollte die CSP mindestens folgende Direktiven enthalten:
default-src 'self'– Grundsätzlich nur eigene Ressourcenscript-src 'self' 'unsafe-inline'– Inline-Scripts nur wenn unvermeidbarconnect-src 'self'– Keine AJAX-Requests an Dritteimg-src 'self' data:– Verhindert Tracking-Pixel von Dritten
Ausnahmen für Consent-Management-Systeme oder notwendige Drittanbieter müssen explizit definiert und dokumentiert werden.
HSTS: Schutz sensibler Datenübertragungen
Der Strict-Transport-Security-Header erzwingt verschlüsselte Verbindungen und verhindert Downgrade-Angriffe. Aus Datenschutzsicht schützt HSTS personenbezogene Daten vor Interception während der Übertragung – eine technische Maßnahme nach Art. 32 Abs. 1 lit. a DSGVO.
Die Konfiguration Strict-Transport-Security: max-age=31536000; includeSubDomains; preload sorgt für:
- Ganzjährige Gültigkeit der HTTPS-Erzwingung
- Schutz aller Subdomänen
- Aufnahme in Browser-Preload-Listen
Besonders kritisch bei Formulardaten: Ohne HSTS können Session-IDs und personenbezogene Daten bei Downgrade-Angriffen im Klartext übertragen werden.
Permissions-Policy: Granulare Kontrolle über Browser-APIs
Der Permissions-Policy-Header (ehemals Feature-Policy) kontrolliert den Zugriff auf Browser-APIs wie Geolocation, Kamera oder Mikrofon. Diese APIs verarbeiten besonders sensible personenbezogene Daten nach Art. 9 DSGVO.
Eine restriktive Policy wie Permissions-Policy: geolocation=(), camera=(), microphone=() deaktiviert diese APIs vollständig und verhindert unbeabsichtigte Zugriffe durch Third-Party-Scripts.
Für Websites, die diese APIs benötigen, sollte der Zugriff auf die eigene Domain beschränkt werden: geolocation=(self), camera=(self).
Dokumentationspflichten und rechtliche Einordnung
Die Implementierung von Security Headern muss nach Art. 30 DSGVO dokumentiert werden. Wichtige Elemente:
- Konfigurierte Header-Werte und ihre datenschutzrechtliche Begründung
- Ausnahmen für Drittanbieter mit entsprechenden AVV-Referenzen
- Monitoring-Logs der CSP-Reports als Compliance-Nachweis
- Regelmäßige Überprüfung der Header-Konfiguration
Technische Umsetzung und Monitoring
Security Header sollten sowohl server- als auch anwendungsseitig implementiert werden. Nginx-Konfiguration:
add_header Content-Security-Policy "default-src 'self'; script-src 'self'"; add_header Strict-Transport-Security "max-age=31536000; includeSubDomains"; add_header Permissions-Policy "geolocation=(), camera=()";
Für kontinuierliches Monitoring sollten CSP-Reports an einen dedizierten Endpoint gesendet und automatisiert ausgewertet werden. Verstöße gegen die konfigurierten Policies können Hinweise auf Datenschutzverletzungen geben.
Die regelmäßige Überprüfung der Header-Konfiguration mit Tools wie securityheaders.com oder observatory.mozilla.org gehört zu den technischen und organisatorischen Maßnahmen nach Art. 32 DSGVO.