Zum Hauptinhalt springen
Rechtliches

Datenschutzerklärung

Stand: Mai 2026

Inhalt- 15 Abschnitte
  1. 01.Verantwortlicher
  2. 02.Geltungsbereich
  3. 03.Erhobene personenbezogene Daten
  4. 04.Zwecke und Rechtsgrundlagen
  5. 05.Speicherdauer und Löschung
  6. 06.Hosting und Infrastruktur
  7. 07.E-Mail-Versand (Passwort-Reset)
  8. 08.Sessions, JWT-Tokens und Cookies
  9. 09.Datenbankverbindungsprofile
  10. 10.Weitergabe an Dritte
  11. 11.Keine Drittland-Übermittlung
  12. 12.Datensicherheit
  13. 13.Rechte der betroffenen Personen
  14. 14.Beschwerderecht
  15. 15.Änderungen

1. Verantwortlicher

Verantwortlicher im Sinne der Datenschutz-Grundverordnung (DSGVO) ist:

Marcus Belz
Rheintalbahnstraße 7
68753 Waghäusel
Deutschland

Telefon: +49 1577 3456535
E-Mail: di2@marcus-belz.de

2. Geltungsbereich

Diese Datenschutzerklärung gilt für die Webanwendung DI² - einen ETL-Generator für Datenbankteams. Die Anwendung ist ausschließlich für eingeladene Mitglieder zugänglich. Eine öffentliche Registrierung ist nicht möglich.

3. Erhobene personenbezogene Daten

3.1 Kontodaten

Bei der Anlage eines Nutzerkontos (ausschließlich durch Administratoren) werden folgende Daten gespeichert:

DatenkategorieDetails
E-Mail-AdresseEindeutiger Identifikator und Kommunikationskanal
NameAnzeigename innerhalb der Anwendung
AuthentifizierungsdatenVerwaltet durch Keycloak Identity Provider (kein Passwort-Hash in der App-Datenbank)
KontostatusAktiv / Deaktiviert
ErstellungszeitpunktDatum der Kontoanlage

Beim ersten Login eines Nutzers wird in der App-Datenbank zusätzlich ein technischer Schatten-Eintrag angelegt, der die Keycloak-User-ID, die E-Mail-Adresse und den Anzeigenamen als Cache hält. Dieser Cache erlaubt Anzeigen wie „Erstellt von Max Mustermann“ ohne ständige Rückfragen beim Identity-Provider. Sobald ein Nutzer in Keycloak gelöscht wird, werden E-Mail und Name in der App-Datenbank automatisch entfernt (DSGVO Art. 17 - Recht auf Vergessenwerden); nur die technische Referenz bleibt erhalten, damit historische Audit-Einträge weiterhin nachvollziehbar bleiben (anonymisiert als „Gelöschter Nutzer“).

3.2 Technische Zugriffsdaten (Brute-Force-Schutz)

Der Schutz vor Brute-Force-Angriffen wird vollständig durch Keycloak als Identity Provider übernommen. Keycloak speichert dabei intern fehlgeschlagene Anmeldeversuche und sperrt Konten temporär nach wiederholten Fehlversuchen. Diese Daten werden ausschließlich im Keycloak-Backend (PostgreSQL-Datenbank) verarbeitet und nicht an die Anwendung weitergegeben.

3.3 Datenbankverbindungsprofile

Nutzer können Verbindungsprofile zu externen Quelldatenbanken anlegen. Diese enthalten:

DatenkategorieDetails
VerbindungsnameFrei wählbare Bezeichnung
Hostname / IPAdresse des Datenbankservers
PortNetzwerk-Port
DatenbanknameName der Quelldatenbank
BenutzernameDatenbanknutzer
PasswortVerschlüsselt gespeichert
DatenbanktypMSSQL oder PostgreSQL

3.4 Generierte SQL-Scripts

Die von der Anwendung erzeugten DDL-Statements und SQL-Prozeduren werden nutzerbezogen gespeichert, um eine Script-Historie zu ermöglichen.

4. Zwecke und Rechtsgrundlagen der Verarbeitung

VerarbeitungszweckDatenRechtsgrundlage
Authentifizierung und ZugriffskontrolleE-Mail, Passwort-Hash, KontostatusArt. 6 Abs. 1 lit. b DSGVO (Vertragserfüllung)
Session-VerwaltungJWT-Token, Nutzer-IDArt. 6 Abs. 1 lit. b DSGVO
Schutz vor Brute-Force-AngriffenIP-Adresse (temporär)Art. 6 Abs. 1 lit. f DSGVO (berechtigtes Interesse: IT-Sicherheit)
Speicherung von VerbindungsprofilenVerbindungsdaten inkl. PasswortArt. 6 Abs. 1 lit. b DSGVO
Script-HistorieGenerierte SQL-Scripts, Nutzer-IDArt. 6 Abs. 1 lit. b DSGVO
Nutzerverwaltung durch AdminsAlle KontodatenArt. 6 Abs. 1 lit. b DSGVO

5. Speicherdauer und Löschung

DatenkategorieSpeicherdauer
Kontodaten (aktive Konten)Für die Dauer der Nutzung der Anwendung
Kontodaten (deaktivierte Konten)Bis zur manuellen Löschung durch Administrator
JWT-Session-Token8 Stunden (automatisch ungültig)
IP-Adressen (Rate-Limiting)Max. 60 Sekunden (Arbeitsspeicher)
DatenbankverbindungsprofileBis zur manuellen Löschung durch den Nutzer
Generierte SQL-ScriptsBis zur manuellen Löschung durch den Nutzer oder Administrator

6. Hosting und Infrastruktur

6.1 Hetzner Cloud (Anwendungsserver und Datenbank)

Die Anwendung wird auf einem Hetzner Cloud VPS betrieben. Hetzner Online GmbH ist ein deutsches Unternehmen mit Rechenzentren in Deutschland und Finnland (EU/EWR).

Hetzner Online GmbH
Industriestr. 25, 91710 Gunzenhausen, Deutschland
Datenschutz: hetzner.com/legal/privacy-policy

Alle personenbezogenen Daten werden ausschließlich auf Hetzner-Servern in der EU verarbeitet und gespeichert. Mit Hetzner besteht ein Auftragsverarbeitungsvertrag (AVV) gemäß Art. 28 DSGVO.

Eingesetzte Hetzner-Dienste:

  • Hetzner Cloud VPS - Anwendungsserver (Next.js, Nginx als Reverse Proxy)
  • PostgreSQL - Selbst gehostete Datenbank auf dem VPS

6.2 SSL/TLS-Verschlüsselung

Die Datenübertragung zwischen Browser und Server ist durch SSL/TLS verschlüsselt. Das Zertifikat wird kostenfrei über Let's Encrypt (Internet Security Research Group) ausgestellt. Let's Encrypt verarbeitet dabei ausschließlich den Domainnamen, keine personenbezogenen Daten der Nutzer.

6.3 DNS und Domain

Die Domainverwaltung erfolgt über All-Inkl.COM (new media GmbH, Deutschland). All-Inkl verwaltet ausschließlich DNS-Einträge und hat keinen Zugriff auf Anwendungsdaten.

new media GmbH
Hauptstraße 68, 02742 Friedersdorf, Deutschland

7. E-Mail-Versand (Passwort-Reset)

Ein automatischer E-Mail-Versand (z. B. für Passwort-Reset) ist in der aktuellen Version der Anwendung noch nicht implementiert. Passwörter werden ausschließlich manuell durch Administratoren zurückgesetzt.

Sobald ein E-Mail-Dienst integriert wird, wird diese Datenschutzerklärung entsprechend aktualisiert und der eingesetzte Anbieter hier benannt.

8. Sessions, JWT-Tokens und Cookies

Nach der Anmeldung wird ein JSON Web Token (JWT) ausgestellt, das deine Sitzung repräsentiert. Dieses Token:

  • hat eine Gültigkeitsdauer von 8 Stunden
  • wird in deinem Browser als HTTP-only Cookie gespeichert
  • enthält ausschließlich: Nutzer-ID, E-Mail, Name
  • wird nach Ablauf automatisch ungültig und erfordert eine erneute Anmeldung

Zusätzlich setzen wir ein einziges weiteres Cookie für eine reine UI-Präferenz:

  • sidebar_state - speichert ausschließlich, ob die Navigations-Sidebar auf- oder zugeklappt ist. Lebensdauer: 7 Tage. Kein personenbezogener Inhalt, kein Tracking, kein Drittanbieter. Technisch notwendig im Sinne § 25 Abs. 2 Nr. 2 TTDSG (Speicherung einer ausdrücklichen Nutzer-Präferenz) und daher ohne Einwilligung zulässig.

Es werden keine dauerhaften Tracking-Cookies oder Third-Party-Cookies eingesetzt.

9. Datenbankverbindungsprofile

Verbindungsprofile zu externen Datenbanken enthalten technische Zugangsdaten zu den Quelldatenbanken (Hostname, Port, Datenbankname, Benutzername, Passwort). Diese Daten:

  • werden ausschließlich für die Herstellung von Datenbankverbindungen im Rahmen der ETL-Generierung verwendet
  • werden verschlüsselt in der PostgreSQL-Datenbank auf dem Hetzner-Server gespeichert
  • sind nur dir und Administratoren zugänglich (Row Level Security)
  • werden nicht an Dritte weitergegeben

10. Weitergabe an Dritte

Personenbezogene Daten werden nicht an Dritte verkauft oder zu Werbezwecken weitergegeben. Eine Weitergabe erfolgt ausschließlich:

  • An Hetzner Online GmbH im Rahmen des Hostingvertrags (AVV vorhanden)
  • Bei gesetzlicher Verpflichtung (z. B. behördliche Anfragen)

11. Keine Drittland-Übermittlung

Alle personenbezogenen Daten werden ausschließlich auf Servern innerhalb der Europäischen Union (EU) bzw. des Europäischen Wirtschaftsraums (EWR) verarbeitet und gespeichert. Es findet keine Übermittlung personenbezogener Daten in Drittländer statt.

Auch sämtliche statischen Assets - Schriftarten (Inter, JetBrains Mono), Icons, Logos und JavaScript-Bundles - werden direkt vom Hetzner-Server in Falkenstein ausgeliefert. Es werden insbesondere keine Schriftarten von Google Fonts oder vergleichbaren Drittanbieter-CDNs nachgeladen, sodass beim Aufruf der Seite keine IP-Adresse oder andere Verbindungsdaten an US-Server übermittelt werden (relevant im Kontext LG München I, Urteil v. 20.01.2022, Az. 3 O 17493/20 zu Google Fonts).

12. Datensicherheit

MaßnahmeUmsetzung
TransportverschlüsselungTLS 1.2/1.3 via Nginx + Let's Encrypt
PasswortsicherheitPasswortverwaltung durch Keycloak Identity Provider (kein Passwort-Hash in der App-Datenbank)
Brute-Force-SchutzKeycloak-integrierter Schutz (temporäre Kontosperrung nach Fehlversuchen)
DatenbankzugriffsschutzRow Level Security (RLS) in PostgreSQL
Session-SicherheitJWT mit 8h Ablauf, HTTP-only Cookies
ZugriffskontrolleRollenbasiert (Nutzer / Administrator) via Keycloak Realm-Rollen
NetzwerksicherheitNginx Reverse Proxy, kein direkter DB-Zugriff von außen

13. Deine Rechte

Als betroffene Person stehen dir gemäß DSGVO folgende Rechte zu:

  • Auskunft (Art. 15) - Welche Daten sind über dich gespeichert?
  • Berichtigung (Art. 16) - Unrichtige Daten korrigieren lassen
  • Löschung (Art. 17) - Deine Daten löschen lassen, sofern keine Aufbewahrungspflicht besteht
  • Einschränkung (Art. 18) - Verarbeitung deiner Daten einschränken lassen
  • Datenübertragbarkeit (Art. 20) - Deine Daten in maschinenlesbarem Format erhalten
  • Widerspruch (Art. 21) - Widerspruch gegen Verarbeitung auf Basis berechtigter Interessen einlegen

Kontakt zur Ausübung deiner Rechte: di2@marcus-belz.de

14. Beschwerderecht

Du hast das Recht, dich bei der zuständigen Datenschutz-Aufsichtsbehörde zu beschweren:

Der Landesbeauftragte für den Datenschutz und die Informationsfreiheit Baden-Württemberg (LfDI BW)
Königstraße 10a, 70173 Stuttgart
poststelle@lfdi.bwl.de
www.baden-wuerttemberg.datenschutz.de

15. Änderungen dieser Datenschutzerklärung

Diese Datenschutzerklärung wird bei Änderungen der Anwendung oder der Rechtslage aktualisiert. Insbesondere wird Abschnitt 7 (E-Mail-Versand) ergänzt, sobald ein Passwort-Reset per E-Mail implementiert wird.