Ist Ihre Website DSGVO-konform? Praktische Checkliste
Praktische DSGVO-Checkliste für Websites. Cookie-Audit, Consent-Banner, Datenschutzerklärung, Google Analytics.
Kurzfassung (TL;DR)
DSGVO-Konformität für Websites erfordert eine informierte Einwilligung vor dem Setzen nicht-essenzieller Cookies, eine transparente Datenschutzerklärung, korrekt konfigurierte Analyse-Tools und eine sichere Verarbeitung personenbezogener Daten über Kontaktformulare. Diese Checkliste führt Sie durch das Auditieren Ihrer Cookies, die Einrichtung eines rechtskonformen Consent-Banners, die Konfiguration von Google Analytics 4 mit Consent Mode v2 und die Behebung der häufigsten Verstöße, die zu Bußgeldern führen. Dieser Artikel stellt eine technische Orientierungshilfe dar und keine Rechtsberatung. Für verbindliche rechtliche Einschätzungen konsultieren Sie bitte einen qualifizierten Rechtsanwalt.
Voraussetzungen
- Administrativer Zugang zu Ihrer Website (CMS-Backend oder Hosting-Dateisystem)
- Zugang zu Ihrem Google Analytics- / Google Tag Manager-Konto (falls verwendet)
- Ein Browser mit Entwicklertools (Chrome, Firefox oder Edge)
- Grundlegendes Verständnis von HTML und JavaScript
- Ein Texteditor zur Bearbeitung von Templates oder Konfigurationsdateien
Schritt 1: Was die DSGVO von Websites verlangt
Die Datenschutz-Grundverordnung (DSGVO) gilt für jede Website, die personenbezogene Daten von Personen im Europäischen Wirtschaftsraum (EWR) verarbeitet. Bei einer typischen Website findet die Verarbeitung personenbezogener Daten häufiger statt, als man vermuten würde: Bereits der Aufruf einer Seite überträgt die IP-Adresse des Besuchers.
Grundsätze mit Auswirkung auf Websites
- Rechtmäßigkeit, Verarbeitung nach Treu und Glauben, Transparenz: Sie benötigen eine Rechtsgrundlage für die Datenverarbeitung und müssen die Nutzer klar darüber informieren.
- Zweckbindung: Daten dürfen nur für festgelegte, eindeutige und legitime Zwecke erhoben werden.
- Datenminimierung: Es dürfen nur die Daten verarbeitet werden, die tatsächlich benötigt werden.
- Speicherbegrenzung: Personenbezogene Daten dürfen nicht länger als nötig aufbewahrt werden.
- Integrität und Vertraulichkeit: Daten müssen durch geeignete technische Maßnahmen geschützt werden (HTTPS, Verschlüsselung).
Die ePrivacy-Richtlinie (Cookie-Richtlinie)
Während die DSGVO personenbezogene Daten allgemein regelt, betrifft die ePrivacy-Richtlinie (2002/58/EG) speziell Cookies und ähnliche Tracking-Technologien. In Kombination ergeben sich folgende Anforderungen:
- Technisch notwendige Cookies dürfen ohne Einwilligung gesetzt werden.
- Alle anderen Cookies (Analyse, Marketing, Präferenzen) erfordern eine vorherige informierte Einwilligung.
- Die Einwilligung muss freiwillig, spezifisch, informiert und eindeutig sein (aktive Handlung).
- Vorangekreuzte Checkboxen oder konkludente Einwilligung (z.B. "Durch die weitere Nutzung stimmen Sie zu") sind nicht zulässig.
Schritt 2: Cookie-Audit durchführen
Bevor Sie Einwilligungen korrekt verwalten können, müssen Sie genau wissen, welche Cookies und Tracker Ihre Website verwendet. Viele Website-Betreiber sind überrascht, was sie dabei entdecken.
Manuelles Browser-Audit
Öffnen Sie Ihre Website in einem Inkognito-/Privatmodus-Fenster mit deaktivierten Erweiterungen. Öffnen Sie dann die Entwicklertools:
// Chrome / Edge: F12 → Anwendung → Cookies
// Firefox: F12 → Web-Speicher → Cookies
// Vorgehensweise:
// 1. Alle Cookies für Ihre Domain löschen
// 2. Startseite laden, OHNE mit dem Consent-Banner zu interagieren
// 3. Jeden erscheinenden Cookie dokumentieren
// 4. Wichtige Unterseiten besuchen (Kontakt, Blog, Shop)
// 5. Neue Cookies auf jeder Seite dokumentierenFür jeden Cookie erfassen Sie:
- Cookie-Name
- Domain (Erstanbieter vs. Drittanbieter)
- Ablaufzeitraum
- Zweck (funktional, Analyse, Marketing)
- Ob er vor oder nach der Einwilligung gesetzt wird
Automatisiertes Scannen
Verwenden Sie einen spezialisierten Scanner für ein gründliches Audit. Es gibt verschiedene kostenlose und kommerzielle Tools:
# Cookiebot-Scanner verwenden (kostenlos für bis zu 1 Seite)
https://www.cookiebot.com/de/cookie-scanner/
# Open-Source-Tool "cookie-scanner" über npm
npm install -g @nicedoc/cookie-scanner
cookie-scanner https://ihredomain.de
# Netzwerk-Anfragen auf Drittanbieter-Aufrufe prüfen
# Chrome DevTools → Netzwerk-Tab → nach Drittanbieter filtern
# Achten Sie auf Anfragen an: google-analytics.com, doubleclick.net,
# facebook.com, hotjar.com, fonts.googleapis.com, etc.Häufig gefundene Cookies
| Cookie | Quelle | Kategorie | Einwilligung erforderlich |
|---|---|---|---|
| PHPSESSID | Ihr Server | Technisch notwendig | Nein |
| wordpress_logged_in_* | WordPress | Technisch notwendig | Nein |
| _ga, _gid | Google Analytics | Analyse | Ja |
| _fbp | Facebook Pixel | Marketing | Ja |
| fr | Marketing | Ja | |
| _hjid | Hotjar | Analyse | Ja |
Schritt 3: Einen rechtskonformen Consent-Banner implementieren
Ein DSGVO-konformer Consent-Banner ist nicht nur eine Benachrichtigung. Es handelt sich um eine funktionale Schnittstelle, die Einwilligungen einholt, protokolliert und durchsetzt.
Anforderungen an einen gültigen Consent-Banner
- Keine vorangekreuzten Checkboxen. Alle nicht-essenziellen Kategorien müssen standardmäßig deaktiviert sein.
- Gleichwertige Darstellung von Akzeptieren und Ablehnen. Die Ablehnungsoption muss genauso leicht erreichbar sein wie die Zustimmungsoption. Ein kleiner Textlink, versteckt unter mehreren Ebenen, genügt nicht.
- Granulare Auswahlmöglichkeiten. Nutzer müssen Kategorien einzeln zustimmen können (z.B. Analyse ja, Marketing nein).
- Keine Cookie-Walls. Der Zugang zur Website darf nicht blockiert werden, wenn der Nutzer nicht-essenzielle Cookies ablehnt (Ausnahmen bestehen für bestimmte Paywall-Szenarien).
- Einwilligungsspeicherung. Die Entscheidung mit Zeitstempel protokollieren und jederzeit widerrufbar machen.
- Vorheriges Blockieren. Nicht-essenzielle Skripte dürfen erst nach erteilter Einwilligung ausgeführt werden.
Implementierungsbeispiel mit eigenem Skript
Falls Sie keine Consent Management Platform (CMP) eines Drittanbieters einsetzen möchten, hier ein minimales Einwilligungslogik-Muster:
<!-- Consent-Banner HTML -->
<div id="consent-banner" role="dialog" aria-label="Cookie-Einwilligung" style="display:none;">
<p>Wir verwenden Cookies, um den Website-Traffic zu analysieren und Ihr
Nutzungserlebnis zu optimieren. Sie können wählen, welche Kategorien
Sie zulassen möchten.</p>
<div class="consent-options">
<label>
<input type="checkbox" checked disabled> Technisch notwendig (immer aktiv)
</label>
<label>
<input type="checkbox" id="consent-analytics"> Analyse
</label>
<label>
<input type="checkbox" id="consent-marketing"> Marketing
</label>
</div>
<button id="consent-accept-all">Alle akzeptieren</button>
<button id="consent-save">Auswahl speichern</button>
<button id="consent-reject-all">Alle ablehnen</button>
</div>
<script>
(function() {
var stored = localStorage.getItem('cookie_consent');
if (!stored) {
document.getElementById('consent-banner').style.display = 'block';
} else {
applyConsent(JSON.parse(stored));
}
document.getElementById('consent-accept-all').addEventListener('click', function() {
saveConsent({ analytics: true, marketing: true });
});
document.getElementById('consent-reject-all').addEventListener('click', function() {
saveConsent({ analytics: false, marketing: false });
});
document.getElementById('consent-save').addEventListener('click', function() {
saveConsent({
analytics: document.getElementById('consent-analytics').checked,
marketing: document.getElementById('consent-marketing').checked
});
});
function saveConsent(choices) {
choices.timestamp = new Date().toISOString();
localStorage.setItem('cookie_consent', JSON.stringify(choices));
document.getElementById('consent-banner').style.display = 'none';
applyConsent(choices);
}
function applyConsent(choices) {
if (choices.analytics) { loadAnalytics(); }
if (choices.marketing) { loadMarketing(); }
}
function loadAnalytics() {
var s = document.createElement('script');
s.src = 'https://www.googletagmanager.com/gtag/js?id=G-XXXXXXX';
document.head.appendChild(s);
}
function loadMarketing() {
// Marketing-Skripte erst nach Einwilligung laden
}
})();
</script>Empfohlene Consent Management Platforms
Für Produktiv-Websites empfiehlt sich eine dedizierte CMP, die Randfälle, Einwilligungsprotokollierung und die Integration mit dem IAB TCF abdeckt:
- Cookiebot (von Usercentrics) — scannt Cookies automatisch, integriert sich mit GTM
- Usercentrics — hochgradig konfigurierbar, starke GTM-Integration
- Klaro (Open Source) — selbst gehostet, leichtgewichtig, datenschutzfreundlich
- Osano — einfache Einrichtung, kostenlose Stufe verfügbar
Schritt 4: Eine vollständige Datenschutzerklärung erstellen
Jede Website, die personenbezogene Daten verarbeitet, muss eine umfassende Datenschutzerklärung bereitstellen, die von jeder Seite aus erreichbar ist (typischerweise im Footer verlinkt).
Pflichtangaben gemäß Art. 13 DSGVO
- Name und Kontaktdaten des Verantwortlichen (Firmenname, Anschrift, E-Mail-Adresse).
- Kontaktdaten des Datenschutzbeauftragten (falls zutreffend — Pflicht für Behörden und bei umfangreicher Datenverarbeitung gemäß Art. 37 DSGVO).
- Art der erhobenen Daten (IP-Adressen, E-Mail-Adressen, Cookies, Formulardaten).
- Zwecke und Rechtsgrundlagen für jede Verarbeitungstätigkeit (Art. 6 Abs. 1 DSGVO — Einwilligung, berechtigtes Interesse, Vertragserfüllung).
- Empfänger der personenbezogenen Daten (Hosting-Anbieter, Analyse-Dienste, E-Mail-Dienstleister).
- Drittlandübermittlungen (falls Daten außerhalb des EWR übertragen werden, z.B. an US-Dienste — Angabe des Schutzmechanismus, z.B. EU-US Data Privacy Framework, Standardvertragsklauseln).
- Speicherdauer für jede Datenkategorie.
- Betroffenenrechte: Auskunft, Berichtigung, Löschung, Einschränkung der Verarbeitung, Datenübertragbarkeit, Widerspruch.
- Beschwerderecht bei einer Aufsichtsbehörde.
- Cookie-Informationen (kann auf den Consent-Banner oder eine separate Cookie-Richtlinie verweisen).
Technische Umsetzung
<!-- Jede Seite muss zur Datenschutzerklärung verlinken -->
<footer>
<a href="/datenschutz">Datenschutzerklärung</a>
<a href="/impressum">Impressum</a> <!-- Pflicht in DE/AT gemäß TMG/DDG -->
</footer>
<!-- Datenschutzerklärung darf nicht durch Cookie-Banner blockiert werden -->
<!-- Datenschutzerklärung sollte indexierbar sein (kein noindex) -->
<!-- Datenschutzerklärung sollte ohne JavaScript ladbar sein -->Schritt 5: Google Analytics DSGVO-konform konfigurieren
Google Analytics 4 (GA4) erfordert eine spezifische Konfiguration, um im EWR rechtmäßig eingesetzt werden zu können.
Google Consent Mode v2 aktivieren
Der Consent Mode v2 kommuniziert den Einwilligungsstatus des Nutzers an Google-Tags und passt deren Verhalten entsprechend an.
<!-- Standard-Einwilligungsstatus setzen, BEVOR gtag.js geladen wird -->
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
// Standard: Alles ablehnen, bis der Nutzer einwilligt
gtag('consent', 'default', {
'analytics_storage': 'denied',
'ad_storage': 'denied',
'ad_user_data': 'denied',
'ad_personalization': 'denied',
'functionality_storage': 'denied',
'personalization_storage': 'denied',
'security_storage': 'granted', // Sicherheits-Cookies sind technisch notwendig
'wait_for_update': 500 // 500ms auf CMP warten
});
</script>
<!-- gtag.js laden -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-XXXXXXX"></script>
<script>
gtag('js', new Date());
gtag('config', 'G-XXXXXXX', {
'anonymize_ip': true, // In GA4 redundant, aber explizit gesetzt
'send_page_view': true
});
</script>
<!-- Bei erteilter Einwilligung den Status aktualisieren -->
<script>
function updateConsentState(analyticsGranted, marketingGranted) {
gtag('consent', 'update', {
'analytics_storage': analyticsGranted ? 'granted' : 'denied',
'ad_storage': marketingGranted ? 'granted' : 'denied',
'ad_user_data': marketingGranted ? 'granted' : 'denied',
'ad_personalization': marketingGranted ? 'granted' : 'denied'
});
}
</script>GA4-Einstellungen im Admin-Bereich
- Navigieren Sie zu Verwaltung → Datenstreams → Ihr Stream → Tag-Einstellungen konfigurieren.
- Deaktivieren Sie die Datenerhebung durch Google-Signale, wenn Sie keine explizite Einwilligung für geräteübergreifendes Tracking haben.
- Setzen Sie die Datenaufbewahrung auf den minimal benötigten Zeitraum (2 Monate oder 14 Monate).
- Überprüfen Sie die IP-Anonymisierung — GA4 führt dies für EWR-Traffic standardmäßig durch, aber verifizieren Sie die Einstellung.
- Prüfen Sie den Auftragsverarbeitungsvertrag unter Verwaltung → Kontoeinstellungen und bestätigen Sie dessen Annahme.
Serverseitiges Tagging (Fortgeschritten)
Für maximale Kontrolle über die an Google gesendeten Daten empfiehlt sich der serverseitige Google Tag Manager. Dabei werden Analysedaten über Ihren eigenen Server geleitet, wodurch Sie personenbezogene Daten entfernen oder anonymisieren können, bevor sie Google erreichen:
# Übersicht: Serverseitiges GTM-Deployment
# 1. Serverseitigen GTM-Container deployen (App Engine, Cloud Run oder Self-Hosted)
# 2. GA4-Measurement-Endpoint über Ihre eigene Domain routen
# 3. Server-Container so konfigurieren, dass Client-IP und User-Agent entfernt werden
# 4. Bereinigte Daten an GA4 weiterleiten
# Ihre Domain dient als Analytics-Endpoint:
# https://ihredomain.de/g/collect → Ihr Server-Container → GA4Schritt 6: Kontaktformulare und Datenverarbeitung absichern
Kontaktformulare erheben personenbezogene Daten direkt. Sie erfordern eine sorgfältige Implementierung.
Technische Anforderungen
<!-- Kontaktformular mit erforderlichen DSGVO-Elementen -->
<form action="/kontakt-senden" method="POST">
<label for="name">Name</label>
<input type="text" id="name" name="name" required>
<label for="email">E-Mail</label>
<input type="email" id="email" name="email" required>
<label for="message">Nachricht</label>
<textarea id="message" name="message" required></textarea>
<!-- DSGVO-Einwilligungs-Checkbox (darf nicht vorangekreuzt sein) -->
<label>
<input type="checkbox" id="privacy-consent" name="privacy_consent" required>
Ich habe die <a href="/datenschutz" target="_blank">Datenschutzerklärung</a>
gelesen und stimme der Verarbeitung meiner Daten zum Zweck der
Bearbeitung meiner Anfrage zu. *
</label>
<button type="submit">Nachricht senden</button>
</form>Backend-Anforderungen
- Nur HTTPS: Formulardaten müssen bei der Übertragung verschlüsselt sein. Leiten Sie sämtlichen HTTP-Traffic auf HTTPS um.
- Minimale Datenerhebung: Fragen Sie nur Felder ab, die Sie tatsächlich benötigen. Ein Telefonnummernfeld in einem allgemeinen Kontaktformular ist selten notwendig.
- Einwilligungsprotokollierung: Speichern Sie den Zeitstempel der Einwilligung, die Version der akzeptierten Datenschutzerklärung und die IP-Adresse (als Nachweis der Einwilligung) zusammen mit den Formulardaten in Ihrer Datenbank.
- Automatische Löschung: Implementieren Sie eine Aufbewahrungsrichtlinie. Löschen Sie Anfragedaten, nachdem Sie geantwortet haben und der Zweck erfüllt ist (z.B. nach 6 Monaten).
- E-Mail-Sicherheit: Falls Formulardaten per E-Mail versendet werden, stellen Sie sicher, dass der Mailserver TLS verwendet. Erwägen Sie, Daten in einer Datenbank zu speichern, anstatt sie im Klartext per E-Mail zu versenden.
# Beispiel: Serverseitige Einwilligungsprotokollierung (Pseudocode)
def handle_contact_form(request):
if not request.POST.get('privacy_consent'):
return error('Einwilligung erforderlich')
submission = {
'name': request.POST['name'],
'email': request.POST['email'],
'message': request.POST['message'],
'consent_given': True,
'consent_timestamp': datetime.utcnow().isoformat(),
'consent_ip': request.META['REMOTE_ADDR'],
'privacy_policy_version': '2024-01-15',
'retention_delete_after': datetime.utcnow() + timedelta(days=180)
}
db.contact_submissions.insert(submission)
return success('Nachricht gesendet')Schritt 7: Häufige Verstöße beheben
Verstoß 1: Cookies werden vor der Einwilligung gesetzt
Der häufigste Verstoß. Analyse- oder Marketing-Skripte werden sofort beim Laden der Seite ausgeführt.
Lösung: Kapseln Sie alle nicht-essenziellen Skripte in Ihre Einwilligungslogik. Im Google Tag Manager verwenden Sie die Consent-Übersicht, um sicherzustellen, dass Tags erst bei erteilter Einwilligung der entsprechenden Kategorie ausgelöst werden.
Verstoß 2: Keine Ablehnungsoption (oder versteckte Ablehnung)
Viele Banner zeigen einen prominenten "Alle akzeptieren"-Button, verstecken die Ablehnung aber hinter "Einstellungen verwalten" → "Speichern" mit allem deaktiviert.
Lösung: Stellen Sie einen "Alle ablehnen"-Button auf derselben Ebene und mit gleichwertiger visueller Gewichtung wie "Alle akzeptieren" bereit.
Verstoß 3: Drittanbieter-Schriften ohne Einwilligung geladen
Google Fonts, die von fonts.googleapis.com geladen werden, übermitteln die IP-Adresse des Besuchers an Google-Server. Das Landgericht München hat dies im Januar 2022 als DSGVO-Verstoß gewertet (LG München I, Az. 3 O 17493/20).
# Lösung: Schriften selbst hosten
# 1. Schriften herunterladen von https://gwfh.mranftl.com/fonts
# 2. Schriftdateien im /fonts/-Verzeichnis ablegen
# 3. Lokal in Ihrem CSS referenzieren:
@font-face {
font-family: 'Open Sans';
font-style: normal;
font-weight: 400;
font-display: swap;
src: url('/fonts/open-sans-v34-latin-regular.woff2') format('woff2');
}
# 4. Alle <link>-Tags entfernen, die auf fonts.googleapis.com verweisenVerstoß 4: Eingebettete Inhalte ohne Einwilligung
YouTube-Videos, Google Maps und Social-Media-Widgets laden beim Seitenaufruf Drittanbieter-Cookies und übermitteln Besucherdaten.
Lösung: Verwenden Sie eine Zwei-Klick-Lösung. Zeigen Sie einen Platzhalter mit einem Einwilligungshinweis an. Laden Sie die eigentliche Einbettung erst, nachdem der Nutzer aktiv zustimmt.
Verstoß 5: Fehlende oder unvollständige Datenschutzerklärung
Lösung: Prüfen Sie Ihre Datenschutzerklärung anhand der in Schritt 4 aufgeführten Pflichtangaben. Nutzen Sie einen Generator als Ausgangspunkt und passen Sie ihn dann an Ihre tatsächlichen Verarbeitungstätigkeiten an.
Verstoß 6: Kein Auftragsverarbeitungsvertrag (AVV)
Sie müssen mit jedem Auftragsverarbeiter einen Auftragsverarbeitungsvertrag gemäß Art. 28 DSGVO abschließen: Hosting-Anbieter, E-Mail-Dienst, Analyse-Anbieter, CRM usw.
Lösung: Kontaktieren Sie jeden Dienstleister und fordern Sie dessen AVV an. Die meisten großen Anbieter (AWS, Google, Mailchimp, Cloudflare) bieten einen Online-AVV an, den Sie über das Admin-Panel akzeptieren können.
Fehlerbehebung
Consent-Banner blockiert Skripte nicht
Falls trotz Banner weiterhin Cookies vor der Einwilligung erscheinen, prüfen Sie:
- Skripte, die direkt im HTML geladen werden (nicht über GTM) und die Einwilligungslogik umgehen.
- WordPress-Plugins, die eigene Skripte unabhängig von Ihrem Consent-Mechanismus injizieren.
- Gecachte Seiten, die altes HTML mit Inline-Skripten ausliefern. Leeren Sie Ihren CDN- und Server-Cache nach Implementierung der Einwilligungslogik.
# Überprüfen, dass vor der Einwilligung keine Cookies gesetzt werden:
# 1. Inkognito-Fenster öffnen
# 2. DevTools → Anwendung → Cookies → alle löschen
# 3. Website laden, NICHT mit dem Consent-Banner interagieren
# 4. Cookies prüfen — nur technisch notwendige Cookies sollten erscheinen
# Netzwerk-Anfragen prüfen, die blockiert sein sollten:
# DevTools → Netzwerk → Seite ohne Einwilligung neu laden
# Filtern nach: google-analytics | doubleclick | facebook | hotjar
# Falls Anfragen an diese Domains erscheinen, ist die Blockierung unvollständigGoogle Analytics zeigt nach der Implementierung keine Daten
- Überprüfen Sie, ob der Consent Mode den
consent update-Aufruf sendet. Prüfen Sie den Netzwerk-Tab auf Anfragen angoogle-analytics.com/g/collectmit dem Parametergcs=(Consent-Status). - Verwenden Sie den Google Tag Assistant (tagassistant.google.com) zur Fehlersuche bei der Tag-Auslösung.
- Hinweis: Mit Consent Mode modelliert Google Daten für Nutzer, die ablehnen. Modellierte Daten erscheinen in den Berichten, dies kann jedoch einige Zeit dauern.
WordPress-Plugin-Konflikte
Cookie-Consent-Plugins können mit Caching-Plugins oder anderen Skripten in Konflikt geraten. Typische Lösungsschritte:
- Das Consent-Skript von Minifizierung und Defer-Laden ausschließen.
- Sicherstellen, dass das Consent-Skript im HTML vor allen anderen nicht-essenziellen Skripten geladen wird.
- JavaScript-Optimierung für Consent-bezogene Dateien in den Einstellungen Ihres Caching-Plugins deaktivieren.
Prävention
Laufende Compliance-Checkliste
- Vierteljährliche Cookie-Audits: Neue Plugins, Updates oder eingebettete Inhalte können neue Cookies einführen. Planen Sie alle 3 Monate einen Scan ein.
- Überprüfung der Datenschutzerklärung: Aktualisieren Sie Ihre Datenschutzerklärung bei jeder Hinzufügung oder Entfernung eines Dienstes, der personenbezogene Daten verarbeitet.
- AVV-Inventar: Führen Sie eine Liste aller Auftragsverarbeiter und deren AVV-Status. Jährlich überprüfen.
- Mitarbeiterschulung: Jeder, der Website-Inhalte verwaltet, sollte verstehen, dass das Einbetten eines YouTube-Videos oder eines neuen Tracking-Pixels DSGVO-Auswirkungen hat.
- Prozess für Betroffenenanfragen: Halten Sie ein dokumentiertes Verfahren für die Bearbeitung von Auskunfts-, Löschungs- und Übertragbarkeitsanfragen innerhalb der 30-Tage-Frist bereit.
- Verzeichnis von Verarbeitungstätigkeiten (VVT): Führen Sie das gemäß Art. 30 DSGVO erforderliche Verzeichnis. Nehmen Sie Ihre Website als Verarbeitungstätigkeit auf.
Automatisiertes Monitoring
# Automatisiertes Cookie-Monitoring per Cron-Job einrichten
# Dieses Skript prüft wöchentlich auf unerwartete Cookies
#!/bin/bash
# cookie-monitor.sh
DOMAIN="ihredomain.de"
EXPECTED_COOKIES="PHPSESSID,cookie_consent,csrf_token"
# Headless-Browser verwenden, um Cookies ohne Interaktion zu erkennen
npx puppeteer-cli screenshot "https://$DOMAIN" \
--cookie-dump /tmp/cookies.json \
--no-interaction
# Gefundene Cookies mit der erwarteten Liste vergleichen
python3 - <<PYEOF
import json
expected = set("$EXPECTED_COOKIES".split(','))
with open('/tmp/cookies.json') as f:
found = set(c['name'] for c in json.load(f))
unexpected = found - expected
if unexpected:
print(f"WARNUNG: Unerwartete Cookies gefunden: {unexpected}")
# Benachrichtigung per E-Mail oder Slack senden
PYEOFVor jedem Deployment
- Prüfen Sie, ob die Änderung neue Drittanbieter-Anfragen oder Cookies einführt.
- Falls ja, fügen Sie die neue Ressource zu Ihrer Consent-Konfiguration hinzu.
- Aktualisieren Sie die Cookie-Deklaration in Ihrer Datenschutzerklärung bzw. Cookie-Richtlinie.
- Testen Sie im Inkognito-Browser: Keine nicht-essenziellen Cookies vor der Einwilligung.
- Dokumentieren Sie die Änderung in Ihrem Verzeichnis von Verarbeitungstätigkeiten.
Hinweis: Dieser Artikel stellt eine technische Orientierungshilfe zur Umsetzung DSGVO-relevanter Website-Funktionen dar. Er stellt keine Rechtsberatung dar. Datenschutzanforderungen variieren je nach Rechtsordnung und konkretem Anwendungsfall. Konsultieren Sie einen qualifizierten Datenschutzanwalt oder Ihren Datenschutzbeauftragten für rechtsverbindliche Einschätzungen.
Experten-Hilfe gebraucht?
Professionelles DSGVO/Cookie-Audit mit schriftlichen Fixes? €49.
Jetzt buchen — €49100% Geld-zurück-Garantie