Legal texts for dorfteich.online; legal template covers the newer processing
All checks were successful
CD / Build and push images (push) Successful in 1m18s
CD / Deploy to Test (push) Successful in 12s
CD / Smoke tests against Test (push) Successful in 1m20s
CD / Promote to Int (push) Successful in 11s
CI / Lint, typecheck, test (push) Successful in 4m7s
CI / Build container images (push) Has been skipped
CI / Auth e2e pack (push) Successful in 5m37s
CI / Import/export fidelity gate (push) Successful in 47s

- deploy/legal/dorfteich-online-{impressum,datenschutz}.md: ready-to-
  paste Markdown for the flagship instance (Admin → Legal pages after
  the wizard) — operator standard texts (§5 DDG, §18(2) MStV, VSBG
  no-participation, UGC/liability/copyright notices) plus a privacy
  policy grounded in what THIS instance actually does: Hetzner hosting
  with DPA, session cookie only (no banner), rate-limit IPs, proxy logs
  ≤30d, transactional + digest mail with unsubscribe, plaintext content
  with versions/comments and public pages, hashed API tokens with
  audited writes, nightly backups incl. the encrypted-tunnel mirror to
  the operator's private server, self-service export,
  deletion/pseudonymization, LfDI BaWü.
- docs/self-hosting/legal-template.md: review checklist and both
  language templates extended for the processing added since #82 —
  comments/version history, notifications/digest mails, API tokens,
  off-host backup copies.

No legal advice; texts follow the operator's standard building blocks
and should get a final human read before publishing.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EwZ4jR4KFAPvpjWevfUGX1
This commit is contained in:
Claude Fable 5 2026-07-12 19:00:05 +02:00
parent eeb0ef6794
commit 0c9d44e9c9
3 changed files with 210 additions and 4 deletions

View File

@ -0,0 +1,101 @@
Verantwortlicher für die Datenverarbeitung auf dorfteich.online ist
Stefan Waidele, Ensisheimer Straße 2, 79395 Neuenburg am Rhein,
E-Mail: stefan@waidele.info (siehe Impressum). Es werden nur
personenbezogene Daten verarbeitet, die für den Betrieb dieses Dienstes
erforderlich sind — es gibt keine Werbung, kein Tracking und keine
Weitergabe an Dritte zu kommerziellen Zwecken.
## Hosting
Diese Instanz läuft auf einem Server der Hetzner Online GmbH,
Industriestr. 25, 91710 Gunzenhausen (Serverstandort Deutschland). Mit
Hetzner besteht ein Vertrag zur Auftragsverarbeitung (Art. 28 DSGVO).
Die Verbindung ist durchgehend TLS-verschlüsselt.
## Konten
Bei der Registrierung speichere ich Benutzername, E-Mail-Adresse, einen
Passwort-Hash (nie das Passwort selbst), den Anzeigenamen und die
Spracheinstellung (Art. 6 Abs. 1 lit. b DSGVO). Die E-Mail-Adresse dient
der Bestätigung des Kontos, dem Zurücksetzen des Passworts und den unten
beschriebenen Benachrichtigungen. Benutzername und Anzeigename sind für
andere Mitglieder sichtbar, mit denen du Teiche teilst.
## Sitzungen und Cookies
Nach der Anmeldung hält ein technisch notwendiges Sitzungs-Cookie
(`dt_session`, Laufzeit 30 Tage) dich angemeldet. Zu jeder Sitzung
speichere ich die von deinem Browser übermittelte Kennung (User-Agent)
und den Ablaufzeitpunkt; unter „Einstellungen → Sitzungen" kannst du
jede Sitzung einsehen und beenden. Es gibt keine Tracking- und keine
Drittanbieter-Cookies — deshalb auch keinen Cookie-Banner.
## Missbrauchsschutz und Server-Logs
Zum Schutz vor Missbrauch (z. B. Anmeldeversuche) werden IP-Adressen in
kurzlebigen Zählern verarbeitet, die automatisch verfallen (Art. 6
Abs. 1 lit. f DSGVO). Der vorgeschaltete Webserver schreibt Zugriffs-Logs
mit IP-Adressen; diese werden rotiert und spätestens nach 30 Tagen
gelöscht.
## E-Mail
Transaktions-E-Mails (Konto-Bestätigung, Passwort-Zurücksetzen) sowie —
sofern du Seiten oder Teiche beobachtest — Benachrichtigungs-Sammelmails
(„Digests") werden über den Mailserver des Betreibers versendet. Digests
kannst du in den Einstellungen abschalten; jede Digest-Mail enthält
zudem einen Abmeldelink, der ohne Anmeldung funktioniert.
## Von dir erstellte Inhalte
Von dir angelegte Seiten, Kommentare und hochgeladene Dateien liegen auf
dem Server und sind für die Personen sichtbar, die die Berechtigungen
der jeweiligen Teiche zulassen; ausdrücklich öffentlich geschaltete
Seiten sind ohne Anmeldung im Internet abrufbar. Inhalte sind nicht
Ende-zu-Ende-verschlüsselt — der Server verarbeitet sie im Klartext, um
Suche, Zusammenarbeit, Export und Darstellung bereitzustellen. Zu jeder
Seite wird eine Versionshistorie einschließlich der beteiligten
Autorinnen und Autoren geführt. Gelöschte Seiten bleiben 30 Tage im
Papierkorb wiederherstellbar, bevor sie endgültig entfernt werden.
## API-Zugriff und KI-Assistenten
Wenn du in den Einstellungen persönliche API-Tokens anlegst (etwa um
Skripte oder KI-Assistenten anzubinden), wird nur ein Hash des Tokens
gespeichert. Zugriffe über Tokens unterliegen exakt deinen
Berechtigungen; schreibende Zugriffe werden im Admin-Protokoll
festgehalten.
## Backups
Zur Ausfallsicherheit werden täglich Sicherungen der Datenbank und der
hochgeladenen Dateien erstellt und 30 Tage aufbewahrt. Eine Kopie der
Sicherungen wird über eine verschlüsselte Verbindung auf einen privaten
Server des Betreibers in Deutschland gespiegelt (gleiche
Aufbewahrungsdauer). Gelöschte Inhalte können daher in Sicherungen noch
bis zu 30 Tage nach der endgültigen Löschung enthalten sein.
## Keine Anfragen an Dritte
Dein Browser kommuniziert ausschließlich mit dieser Instanz: Schriften
sind selbst gehostet, es gibt keine CDNs, keine Analyse-Dienste und
keine eingebetteten Drittanbieter.
## Deine Rechte
Du kannst deine eigenen Daten (Profil und die dir gehörenden Teiche)
jederzeit unter „Einstellungen → Datenexport" als ZIP-Archiv exportieren
(Auskunft und Datenübertragbarkeit, Art. 15 und 20 DSGVO). Bei der
Löschung deines Kontos werden deine persönlichen Daten entfernt; deine
Autorenschaft an geteilten Inhalten wird durch „gelöschte
Nutzerin/gelöschter Nutzer" ersetzt (Pseudonymisierung). Darüber hinaus
hast du das Recht auf Berichtigung, Löschung und Einschränkung der
Verarbeitung sowie auf Widerspruch (Art. 1618, 21 DSGVO). Wende dich
dazu an die im Impressum genannte E-Mail-Adresse.
Beschwerden richtest du an die zuständige Aufsichtsbehörde: Der
Landesbeauftragte für den Datenschutz und die Informationsfreiheit
Baden-Württemberg (LfDI), Lautenschlagerstraße 20, 70173 Stuttgart,
<https://www.baden-wuerttemberg.datenschutz.de>.
_Stand: 12. Juli 2026_

View File

@ -0,0 +1,63 @@
**Angaben gemäß § 5 DDG**
Stefan Waidele
Ensisheimer Straße 2
79395 Neuenburg am Rhein
Deutschland
**Kontakt**
E-Mail: stefan@waidele.info
**Verantwortlich für eigene Inhalte gemäß § 18 Abs. 2 MStV**
Stefan Waidele (Anschrift wie oben)
## Verbraucherstreitbeilegung
Ich bin nicht bereit und nicht verpflichtet, an Streitbeilegungsverfahren
vor einer Verbraucherschlichtungsstelle teilzunehmen (§ 36 VSBG).
## Inhalte von Nutzerinnen und Nutzern
dorfteich.online ist ein Wiki: Die Inhalte der einzelnen Teiche und
Seiten werden von den jeweiligen Nutzerinnen und Nutzern erstellt und
verantwortet. Als Betreiber mache ich mir diese Inhalte nicht zu eigen.
Hinweise auf rechtswidrige Inhalte nehme ich unter der oben genannten
E-Mail-Adresse entgegen und entferne betroffene Inhalte nach Prüfung
unverzüglich.
## Haftung für Inhalte
Für eigene Inhalte auf diesen Seiten bin ich nach den allgemeinen
Gesetzen verantwortlich. Ich bin jedoch nicht verpflichtet, übermittelte
oder gespeicherte fremde Informationen zu überwachen oder nach Umständen
zu forschen, die auf eine rechtswidrige Tätigkeit hinweisen.
Verpflichtungen zur Entfernung oder Sperrung der Nutzung von
Informationen nach den allgemeinen Gesetzen bleiben hiervon unberührt;
eine diesbezügliche Haftung ist erst ab dem Zeitpunkt der Kenntnis einer
konkreten Rechtsverletzung möglich.
## Haftung für Links
Von Nutzerinnen, Nutzern oder mir gesetzte Links führen zu Inhalten
Dritter, auf die ich keinen Einfluss habe. Für diese fremden Inhalte
übernehme ich keine Gewähr; verantwortlich ist stets der jeweilige
Anbieter. Zum Zeitpunkt der Verlinkung erkennbare Rechtsverstöße lagen
nicht vor. Bei Bekanntwerden von Rechtsverletzungen werden entsprechende
Links umgehend entfernt.
## Urheberrecht
Die durch den Betreiber erstellten Inhalte und Werke auf diesen Seiten
unterliegen dem deutschen Urheberrecht. Von Nutzerinnen und Nutzern
erstellte Inhalte verbleiben bei diesen; mit dem Einstellen räumen sie
dem Betreiber die für den Betrieb des Dienstes erforderlichen einfachen
Nutzungsrechte ein (Speicherung, Anzeige, Backups, Export). Die
Dorfteich-Software selbst ist Open Source (MIT-Lizenz).
## Verfügbarkeit
dorfteich.online ist ein kostenfreies Angebot. Ich bemühe mich um einen
zuverlässigen Betrieb und regelmäßige Datensicherungen, übernehme jedoch
keine Gewähr für die ununterbrochene Verfügbarkeit des Dienstes.

View File

@ -27,6 +27,10 @@ them changes, update the templates in the same change:
| Reverse-proxy logs | IP address, requested URL | host level (Caddy/nginx), operator-managed rotation | | Reverse-proxy logs | IP address, requested URL | host level (Caddy/nginx), operator-managed rotation |
| Transactional e-mail | recipient address, mail content | SMTP relay (wizard/secret store, #80); verification, password reset | | Transactional e-mail | recipient address, mail content | SMTP relay (wizard/secret store, #80); verification, password reset |
| Content & uploads | pages, attachments authored by users | ponds/pages/files; server sees plaintext (no E2E, security.md §Out of scope) | | Content & uploads | pages, attachments authored by users | ponds/pages/files; server sees plaintext (no E2E, security.md §Out of scope) |
| Comments & versions | comment threads; per-page version history incl. contributor names | comments (#91), versions (ADR 0013) |
| Notifications & digests | in-app notifications; digest mails with unsubscribe token | notifications (#94), digests (#95) |
| API tokens | token hash, scope, last use; writes audit-logged | personal access tokens (#104), MCP (#105) |
| Off-host backup copies | full backup sets on an operator-chosen target | Nextcloud target (#103), private mirror (#84) |
| Data export | self-service ZIP (profile + own ponds) | `POST /users/me/data-export` (#68) | | Data export | self-service ZIP (profile + own ponds) | `POST /users/me/data-export` (#68) |
| Deletion | trash/purge for content; pseudonymized authorship ("deleted user") | PseudonymizationService (#59), trash retention (ADR 0013) | | Deletion | trash/purge for content; pseudonymized authorship ("deleted user") | PseudonymizationService (#59), trash retention (ADR 0013) |
| No third-party requests | fonts self-hosted, no CDNs, no analytics | ADR 0016, CSP in nginx.conf | | No third-party requests | fonts self-hosted, no CDNs, no analytics | ADR 0016, CSP in nginx.conf |
@ -112,10 +116,26 @@ message content are transmitted to that relay for delivery.
Pages and uploaded files you create are stored on the server and are Pages and uploaded files you create are stored on the server and are
visible to the people your ponds' permissions allow. Content is not visible to the people your ponds' permissions allow. Content is not
end-to-end encrypted — the server processes it in plaintext to provide end-to-end encrypted — the server processes it in plaintext to provide
search, export, and rendering. Deleted pages remain restorable from the search, export, and rendering. Every page keeps a version history
including the names of its contributors; comments are stored with their
author. Deleted pages remain restorable from the
trash for [trash retention, default 30] days before they are permanently trash for [trash retention, default 30] days before they are permanently
removed. removed.
## Notifications and digest mails
If you watch pages or ponds, notifications are collected in the app and
— depending on your settings — bundled into digest e-mails. Digests can
be disabled in the settings; every digest carries an unsubscribe link
that works without signing in.
## API tokens
If you create personal access tokens (for scripts or AI assistants),
only a hash of the token is stored. Token access is limited to your own
permissions; write operations are recorded in the administrative audit
log.
## No third-party requests ## No third-party requests
Your browser talks only to this instance: fonts are self-hosted, and Your browser talks only to this instance: fonts are self-hosted, and
@ -135,7 +155,9 @@ exercise your rights, contact [address from the imprint].
## Hosting and backups ## Hosting and backups
This instance is hosted at [provider, location]. Backups are kept for This instance is hosted at [provider, location]. Backups are kept for
[retention] and stored [location/provider]. [retention] and stored [location/provider]. [If configured: a copy of
each backup set is transferred to [target, e.g. a Nextcloud / a private
server] and kept there for [retention].]
``` ```
## Privacy policy template (Deutsch) ## Privacy policy template (Deutsch)
@ -182,10 +204,27 @@ Von dir angelegte Seiten und hochgeladene Dateien liegen auf dem Server
und sind für die Personen sichtbar, die die Berechtigungen deiner Teiche und sind für die Personen sichtbar, die die Berechtigungen deiner Teiche
zulassen. Inhalte sind nicht Ende-zu-Ende-verschlüsselt — der Server zulassen. Inhalte sind nicht Ende-zu-Ende-verschlüsselt — der Server
verarbeitet sie im Klartext, um Suche, Export und Darstellung verarbeitet sie im Klartext, um Suche, Export und Darstellung
bereitzustellen. Gelöschte Seiten bleiben [Aufbewahrung, Standard 30] bereitzustellen. Zu jeder Seite wird eine Versionshistorie
einschließlich der beteiligten Autorinnen und Autoren geführt;
Kommentare werden mit ihrer Autorin/ihrem Autor gespeichert. Gelöschte
Seiten bleiben [Aufbewahrung, Standard 30]
Tage im Papierkorb wiederherstellbar, bevor sie endgültig entfernt Tage im Papierkorb wiederherstellbar, bevor sie endgültig entfernt
werden. werden.
## Benachrichtigungen und Digest-Mails
Wenn du Seiten oder Teiche beobachtest, werden Benachrichtigungen in der
App gesammelt und — je nach Einstellung — als Sammel-E-Mails („Digests")
zugestellt. Digests lassen sich in den Einstellungen abschalten; jede
Digest-Mail enthält einen ohne Anmeldung funktionierenden Abmeldelink.
## API-Tokens
Wenn du persönliche API-Tokens anlegst (für Skripte oder
KI-Assistenten), wird nur ein Hash des Tokens gespeichert. Zugriffe über
Tokens unterliegen deinen eigenen Berechtigungen; schreibende Zugriffe
werden im Admin-Protokoll festgehalten.
## Keine Anfragen an Dritte ## Keine Anfragen an Dritte
Dein Browser kommuniziert ausschließlich mit dieser Instanz: Schriften Dein Browser kommuniziert ausschließlich mit dieser Instanz: Schriften
@ -207,5 +246,8 @@ Aufsichtsbehörde. Wende dich dazu an [Kontakt aus dem Impressum].
## Hosting und Backups ## Hosting und Backups
Diese Instanz wird gehostet bei [Anbieter, Standort]. Backups werden Diese Instanz wird gehostet bei [Anbieter, Standort]. Backups werden
[Aufbewahrung] aufbewahrt und liegen [Ort/Anbieter]. [Aufbewahrung] aufbewahrt und liegen [Ort/Anbieter]. [Falls
konfiguriert: Eine Kopie der Sicherungen wird zu [Ziel, z. B. eine
Nextcloud / ein privater Server] übertragen und dort [Aufbewahrung]
aufbewahrt.]
``` ```