Evidence: https://saferpage.de/nachweise/documenta14.de/export
Hash: f7b413f231c5f5ddc1ec9609 · Previous: 553c3a9d5b60d2f9073ef105Consent Database / Ledger
documenta14.de: Einwilligungen nachweisbar speichern
documenta14.de: Consent-Ledger-Blueprint mit 14 Datenfeldern, 7 Ereignissen, 7 Log-Zeilen und 6 Kategorien für auditierbare Einwilligungsnachweise.
Der Ledger-Blueprint ist eine technische Betreiber-Vorlage. Rechtsgrundlage, Speicherfrist, Zugriffsschutz und Integration in CMP/Backend müssen fachlich freigegeben werden.
Consent Log
Downloadbare Transaktionszeilen mit Hashkette
Evidence: https://saferpage.de/nachweise/documenta14.de/export
Hash: 0f676a9f6f5817cba9454a10 · Previous: f7b413f231c5f5ddc1ec9609Evidence: https://saferpage.de/nachweise/documenta14.de/export
Hash: 3e57e768887830bacfb3db02 · Previous: 0f676a9f6f5817cba9454a10Evidence: https://saferpage.de/nachweise/documenta14.de/export
Hash: 55e6c647d1371345e7a36e5c · Previous: 3e57e768887830bacfb3db02Evidence: https://saferpage.de/nachweise/documenta14.de/export
Hash: 50cc1fc72978e888650bc962 · Previous: 55e6c647d1371345e7a36e5cEvidence: https://saferpage.de/nachweise/documenta14.de/export
Hash: 7f52b0e24fdd70f7ec4e4bce · Previous: 50cc1fc72978e888650bc962Evidence: https://saferpage.de/nachweise/documenta14.de/export
Hash: 8535eca4e087f0e618472d87 · Previous: 7f52b0e24fdd70f7ec4e4bceExport immer nach Domain, Zeitraum und Rechtsraum filtern; keine domainübergreifenden Rohlogs ohne Zweckfreigabe.
Subject-, IP- und User-Agent-Bezug nur gehasht und mit Zugriffsschutz exportieren.
Jede Zeile enthält previous_hash und row_hash, damit nachträgliche Änderungen auffallen.
DSAR-Export trennt Nachweiszweck, technische Logs und Lösch-/Sperrentscheidungen.
Nachweisfrist und Löschfristen je Zweck dokumentieren; abgelaufene Rohdaten aggregieren oder löschen.
Ereignisse
Welche Consent-Aktionen protokolliert werden
Belegt, welche Version Nutzer gesehen haben.
Felder: domain, banner_version, policy_version, region, created_atZentrale Nachweiszeile für aktive Einwilligung.
Felder: consent_id, categories, services, action, created_atAblehnen muss genauso auditierbar sein wie Akzeptieren.
Felder: consent_id, categories, action, created_atWiderruf überschreibt Downstream-Zustände und muss nachvollziehbar bleiben.
Felder: previous_consent_id, withdrawn_at, categories, source1 Datenschutz-Domain(s) im GPC-Kontext.
Felder: gpc_signal, region, action, created_at1 datenschutzrelevante Browserkontakt(e) aus dem Scan.
Felder: destination, categories, sync_status, created_atVerbindet Betreiberentscheidung mit technischer Scan-Evidenz.
Felder: scan_id, checked_at, result_url, evidence_hashDatenmodell
Minimale Felder für auditierbare Nachweise
Eindeutiger Nachweisdatensatz
Nicht als Klartext-Personenkennung verwenden.Wiedererkennung ohne Klartext-ID
Salt/Rotation und Zugriffsschutz dokumentieren.Betroffene Website
Mandanten-/Domain-Trennung erzwingen.DE/EU/CH/AT oder CMP-Region
Regelbasiertes Verhalten nachvollziehbar machen.Version der Consent-Oberfläche
Bei Text-/Layoutänderung erhöhen.Datenschutz-/Cookie-Hinweis-Version
Mit veröffentlichtem Hinweis und Datum verbinden.Status je Kategorie
Nur notwendige Kategorien speichern.Optionaler Status je Dienst
Dienste aus Anbieterregister synchronisieren.accept, reject, save, withdraw, gpc
Ablehnung und Widerruf gleichwertig protokollieren.Missbrauchs-/Nachweisbezug
Klartext-IP vermeiden; Speicherfrist begrenzen.Technischer Kontext
Nicht für Tracking oder Profiling verwenden.Verweis auf Scan, Screenshot oder Export
Keine sensiblen Rohdaten in öffentliche Exporte schreiben.Zeitpunkt der Entscheidung
Zeitzone und Serverzeit stabil halten.Review-/Ablauffrist
Regelmäßige Erneuerung und Löschung planen.Speicherung
Kontrollen für Datenschutz und Betrieb
Klartext-IP, User-Agent und Personenkennung vermeiden; Hash/Salt und kurze Fristen verwenden.
Banner-, Policy-, Kategorie- und Anbieterregister-Version bei jeder Entscheidung speichern.
Widerruf an Tag Manager, CMP, Analytics, Ads und CRM weitergeben und Synchronisierung protokollieren.
Nachweisfrist, Zweckende, erneute Einwilligung und DSAR-Löschung als Löschtrigger definieren.
Ledger nur für Datenschutz/Compliance/IT freigeben; Exportzugriffe protokollieren.
Snippets
Backend und Banner verbinden
CREATE TABLE consent_ledger_documenta14_de (
consent_id text PRIMARY KEY,
subject_key_hash text NOT NULL,
domain text NOT NULL,
region text NOT NULL,
banner_version text NOT NULL,
policy_version text NOT NULL,
action text NOT NULL CHECK (action IN ('accept','reject','save','withdraw','gpc')),
categories_json jsonb NOT NULL,
services_json jsonb NOT NULL DEFAULT '{}'::jsonb,
gpc_signal boolean NOT NULL DEFAULT false,
ip_hash text,
user_agent_hash text,
evidence_ref text,
created_at timestamptz NOT NULL DEFAULT now(),
expires_at timestamptz
);
CREATE INDEX consent_ledger_documenta14_de_subject_idx ON consent_ledger_documenta14_de (subject_key_hash, created_at DESC);
window.addEventListener('saferpage-consent-update', function (event) {
fetch('/privacy/consent-ledger', {
method: 'POST',
headers: {'Content-Type': 'application/json'},
credentials: 'same-origin',
body: JSON.stringify({
domain: 'documenta14.de',
banner_version: 'v1',
policy_version: 'privacy-notice-current',
action: 'save',
categories: event.detail,
evidence_ref: window.location.href
})
});
});