Sicherheit
Stand: 11. September 2026. Diese Seite beschreibt, wie consentdone technisch abgesichert ist, wo Daten liegen und wie Sie uns eine Schwachstelle melden. Was noch nicht läuft, steht hier als geplant — nicht als Zusage.
Was wir speichern — und was nicht
Ein Einwilligungs-Nachweis besteht aus Einwilligungs-ID, Domain, Kategorien, Banner-Revision, Zeitpunkt, Gerätetyp, Browser-Familie und Herkunftsland. Die IP-Adresse Ihrer Besucher speichern wir nicht. Statt ihrer legen wir einen Hash-Wert aus IP und Browser-Kennung ab (HMAC-SHA256 mit geheimem Schlüssel), der die Zuordnung eines Widerrufs zum ursprünglichen Nachweis erlaubt, aber nicht zurückgerechnet werden kann. Fehlt der Schlüssel, wird gar kein Hash gespeichert — der Dienst meldet den Fehlbetrieb, statt einen schwachen Wert abzulegen. Es gibt kein Profiling, keine Weitergabe an Werbenetzwerke und keine Auswertung über Kundengrenzen hinweg.
Übertragung und Speicherung
- Alle Verbindungen laufen ausschließlich über TLS; die Anwendungen setzen
Strict-Transport-Security, sodass Browser HTTP gar nicht erst versuchen. - Daten liegen in Cloudflare D1 und werden dort im Ruhezustand verschlüsselt.
- Zugangsdaten speichern wir nie im Klartext; Anmeldung, Sitzungen und Zugangslinks laufen über eine etablierte Auth-Bibliothek mit Rate-Limit gegen Durchprobieren.
- Geheimnisse (Schlüssel, Tokens) liegen als Worker-Secrets bei Cloudflare, nicht im Quellcode und nicht im Repository.
Trennung der Konten
Jede Abfrage im Verwaltungsbereich ist an das Konto gebunden, zu dem die angemeldete Person gehört — auch Nachweise, Statistik und Export. Die Zugehörigkeit wird bei jeder Anfrage neu gegen die Datenbank geprüft, nicht aus der Sitzung geglaubt. Wechselt eine Domain den Besitzer, bleiben die Nachweise des Vorgängers beim Vorgänger. Diese Trennung ist nicht nur beschrieben, sondern wird bei jedem Deploy automatisch geprüft: 45 Prüfungen laufen gegen einen echten Worker und lassen die Auslieferung scheitern, wenn eine davon fällt.
Schutz der Auslieferung
- Nachweise sind an die Herkunft gebunden: Ein Nachweis wird nur angenommen, wenn die gemeldete Domain zum tatsächlichen Absender der Anfrage passt. Fremde Nachweise lassen sich nicht unterschieben.
- Rate-Limits auf Nachweise, Cookie-Meldungen und Anmeldeversuche.
- Banner-Texte werden serverseitig gefiltert: Eigene Texte und eigenes CSS durchlaufen eine Positivliste, damit über die Konfiguration kein Skript auf Kundenseiten gelangt.
- Domain-Endungen lassen sich nicht als eigene Domain anlegen (Public-Suffix-Liste), und „gilt auch für Subdomains" setzt eine per DNS nachgewiesene Domain voraus.
- Browser-Härtung: Content-Security-Policy,
X-Frame-Options,nosniff, Referrer- und Permissions-Policy auf Website und Verwaltungsbereich. Im Verwaltungsbereich kommt die Policy ohne'unsafe-inline'für Skripte aus; auf der Website ist es noch nötig, weil dort einige Inline-Skripte stehen.
Wo die Daten liegen
consentdone läuft vollständig auf der Infrastruktur von Cloudflare. Die Auslieferung erfolgt aus dem weltweiten Netz, die Datenbank liegt in einer primären Region. Eine Verarbeitung ausschließlich in der EU können wir derzeit nicht zusichern. Für die Übermittlung in die USA stützen wir uns auf das EU-US Data Privacy Framework und auf EU-Standardvertragsklauseln. Ein Hosting ohne Drittstaatenbezug ist geplant, aber noch nicht verfügbar; sobald es so weit ist, steht es hier.
Unterauftragsverarbeiter
| Dienstleister | Wofür | Sitz |
|---|---|---|
| Cloudflare, Inc. | Hosting, Datenbank, Auslieferung | USA |
| Resend, Inc. | Konto- und Transaktions-E-Mails | USA |
| Functional Software, Inc. (Sentry) | Fehlerberichte ohne personenbezogene Daten | USA, Datenannahme EU |
| GitHub, Inc. | Cookie-Scan Ihrer Domain | USA |
| Stripe Payments Europe, Ltd. | Zahlungsabwicklung bei Bezahlkonten | Irland |
| DeepL SE | Optionale Übersetzung der Banner-Texte | Deutschland |
Änderungen an dieser Liste kündigen wir Kunden 30 Tage vorher an; bis zum Wirksamwerden können sie widersprechen.
Änderungshistorie
- 11.09.2026 — Stripe als Zahlungsdienstleister aufgenommen (Vorbereitung des Bezahlbetriebs).
- 11.09.2026 — Liste vervollständigt: Sentry, GitHub und DeepL waren im Einsatz, standen aber nicht in allen Verzeichnissen.
- vor dem 11.09.2026 — Cloudflare und Resend.
Sicherung und Wiederherstellung
Cloudflare D1 hält die Datenbank 30 Tage lang zurückspulbar („Time Travel") — damit lassen sich versehentliche Änderungen rückgängig machen. Zusätzlich ist ein täglicher Export in einen getrennten Speicher gebaut, samt automatischer Prüfung jedes Exports und einem erprobten Wiederherstellungs-Ablauf. Dieser tägliche Export wird mit dem Start des Bezahlbetriebs scharf geschaltet — bis dahin gilt allein Time Travel. Unabhängig davon können Sie Ihre Nachweise jederzeit selbst exportieren; wir empfehlen das ausdrücklich.
Wie wir entwickeln
- Jede Auslieferung durchläuft ein Gate: statische Prüfung, Tests der Guards und der Mandanten-Trennung, ein Banner-Test in echtem Chrome und eine Barrierefreiheits-Prüfung. Schlägt einer fehl, wird nichts ausgerollt.
- Abhängigkeiten werden wöchentlich automatisch auf Updates geprüft; sie laufen als einzelne Änderungen durch dasselbe Gate.
- Vor Datenbank-Änderungen prüft ein Abgleich, dass Code und Migrationen zusammenpassen.
- Für den Ernstfall gibt es einen dokumentierten Weg zurück auf die vorherige Version.
Eine Schwachstelle melden
Wenn Sie eine Sicherheitslücke finden, schreiben Sie uns an meikel@korfmacher.at (auch als security.txt hinterlegt). Beschreiben Sie bitte, was Sie gefunden haben und wie es sich nachvollziehen lässt.
Was wir zusagen: Eingangsbestätigung innerhalb von drei Werktagen, eine erste Einschätzung innerhalb von zehn Werktagen, Information über die Behebung und auf Wunsch eine Nennung als Finder. Gegen Personen, die sich an die untenstehenden Regeln halten, gehen wir nicht rechtlich vor. Ein Bug-Bounty-Programm mit Geldprämien haben wir nicht — das sagen wir lieber offen, als es anzudeuten.
Im Umfang: consentdone.de und consentdone.com, app.consentdone.com, api.c-done.com, cdn.c-done.com sowie das WordPress-Plugin und das GTM-Template.
Nicht erwünscht: Überlast- und Lasttests, Spam, Social Engineering gegenüber uns oder unseren Kunden, physische Angriffe, sowie jeder Zugriff auf Daten Dritter. Wenn Sie zufällig fremde Daten sehen, brechen Sie ab und melden Sie es. Legen Sie für Tests bitte ein eigenes Konto an.
Wenn doch etwas passiert
Betroffene Kunden informieren wir unverzüglich, mit dem, was wir wissen: was passiert ist, welche Daten betroffen sind, was wir tun und was Sie tun sollten. Wo wir als Auftragsverarbeiter tätig sind, gilt die Meldefrist aus dem Auftragsverarbeitungsvertrag (24 Stunden ab Kenntnis), damit Sie Ihre eigenen Fristen gegenüber der Aufsichtsbehörde einhalten können.
Fragen dazu? meikel@korfmacher.at · Datenschutzerklärung · Nutzungsbedingungen