Datenflüsse und personenbezogene Daten¶
Welche personenbezogenen Daten Krywerk wo verarbeitet, wohin sie fließen und wie lange sie bleiben. Grundlage für Verzeichnis von Verarbeitungstätigkeiten, Datenschutzhinweise und Datenschutz-Folgenabschätzung der Organisation, die Krywerk einsetzt. Dieses Dokument ist keine Rechtsberatung; die rechtliche Bewertung trifft die verantwortliche Stelle.
Stand: Version 0.9 (2026-10).
1. Überblick¶
flowchart LR
P["Person"] -->|Anmeldung im Browser| IDP["Anmeldedienst<br/>(Keycloak, Entra ID)"]
P --> APP["Krywerk-App<br/>(eigener Rechner)"]
APP -->|"Access Token, Geräte-/Schlüsseldaten (HTTPS)"| KS["Krywerk Server<br/>(Organisation)"]
KS -->|"Schlüssel prüfen (JWKS)"| IDP
APP -->|"nur verschlüsselte Dateien"| CLOUD["Speicherort<br/>(OneDrive, Nextcloud, NAS …)"]
ADM["IT-Administration"] -->|Web-Verwaltung| KS
- Ohne Team-Ordner (nur persönliche Tresore, Boxcryptor-Ordner) verarbeitet Krywerk personenbezogene Daten ausschließlich lokal auf dem Rechner der Person. Es gibt keinen Kontakt zu einem Server des Krywerk-Projekts.
- Mit Team-Ordnern kommen der Krywerk Server der Organisation und ihr Anmeldedienst hinzu.
- Keine Telemetrie, keine Analyse, keine Absturzberichte, keine Update-Abfragen.
- Dateiinhalte und Dateinamen verlassen den Rechner nur verschlüsselt, und zwar dorthin, wo die Person den verschlüsselten Ordner selbst abgelegt hat (Sync-Ordner, Netzlaufwerk).
2. Krywerk Server (verantwortlich: die betreibende Organisation)¶
2.1 Gespeicherte Daten¶
| Datenkategorie | Felder | Herkunft | Zweck | Speicherdauer |
|---|---|---|---|---|
| Konto | ID (sub des Anmeldedienstes), Anzeigename, E-Mail, Vor-/Nachname, Bild-URL, Sprache, aktiv/gesperrt, zuletzt gesehen (stundengenau) |
Token des Anmeldedienstes bei jeder Anmeldung | Freigaben an Personen, Anzeige in Listen | Bis zur Löschung der Person (Abschnitt 4) |
| Gruppen | Gruppenname, Mitgliedschaften | Token (Gruppen-Claim) oder Web-Verwaltung | Freigaben an Gruppen | Bis zur Löschung der Gruppe bzw. Person |
| Schlüssel der Person | öffentliche Schlüssel (ECDH, ECDSA), privater Schlüssel verschlüsselt mit dem Freischaltcode, Freischaltcode verschlüsselt mit Geräteschlüsseln | App bei der Einrichtung | Zugriff auf Team-Ordner | Bis zur Löschung der Person |
| Geräte | Gerätename (Standard: Rechnername), Typ, öffentlicher Schlüssel, verschlüsselter Personenschlüssel, angelegt am, letzter Zugriff, letzte IP-Adresse (nur mit audit.record_ip) |
App | Entsperren ohne Freischaltcode, Übersicht für die Person | Bis die Person das Gerät entfernt oder gelöscht wird |
| Team-Ordner | Name, Beschreibung, Mitglieder mit Rolle, verschlüsselte Tresorschlüssel je Person, archiviert | App, Web-Verwaltung | Zugriffssteuerung | Bis zum Löschen des Ordners |
| Notfallzugriff | Gremium, Anträge (antragstellende Person, Begründung als Freitext, Zeitpunkte), Zustimmungen | App | Vier-Augen-Wiederherstellung | Anträge verfallen nach emergency.process_max_age_days (Standard 14 Tage) |
| Protokoll | Zeitpunkt, handelnde Person (ID, Name), Aktion, betroffener Ordner/Person/Gruppe (Namen), Detail; IP-Adresse nur mit audit.record_ip |
Server | Nachvollziehbarkeit von Verwaltungsaktionen | audit.retention_days (Standard 365 Tage, danach automatisch gelöscht) |
| Web-Sitzungen | Hash der Sitzungs-ID, Rollen, Zeitpunkte | Web-Verwaltung | Anmeldung der Administration | Bis Abmeldung/Ablauf (Standard max. 8 h, 30 min Leerlauf) |
| Zugriffsprotokoll (Konsole) | Zeitpunkt, Methode, Pfad, Statuscode – ohne IP, Token, Inhalte | Server | Betrieb, Fehlersuche | Nach Docker-/journald-Rotation (Vorlage: 5 × 10 MB) |
Nicht auf dem Server: Dateien, Dateinamen, Passwörter, Freischaltcodes, entschlüsselte Schlüssel, Inhalte des Speicherorts.
2.2 Empfänger¶
- Anmeldedienst der Organisation: erhält beim Abruf der öffentlichen Schlüssel (JWKS) keine personenbezogenen Daten. Die Anmeldung selbst läuft zwischen Browser der Person und Anmeldedienst.
- Reverse Proxy (z. B. Caddy): sieht IP-Adressen und angefragte Pfade (eigene Protokolle des Proxys, nach dessen Konfiguration).
- Sicherungen der Datenbank (
krywerk-server backup) enthalten alle Daten aus 2.1 und sind entsprechend zu schützen (Vorlage: Dateirechte 0600, 30 Tage aufbewahrt). - Keine Übermittlung an das Krywerk-Projekt oder Dritte.
2.3 Einstellungen mit Datenschutzbezug¶
| Option | Standard | Wirkung |
|---|---|---|
audit.record_ip / KRYWERK_SERVER_AUDIT_RECORD_IP |
aus | IP-Adressen im Protokoll und als letzte Geräte-IP speichern |
audit.retention_days / KRYWERK_SERVER_AUDIT_RETENTION_DAYS |
365 | Aufbewahrung des Protokolls in Tagen (0 = unbegrenzt) |
oidc.groups_claim |
groups |
Gruppen aus dem Token übernehmen (leer = aus) |
emergency.process_max_age_days |
14 | Verfall offener Notfallanträge |
KRYWERK_SERVER_QUIET |
aus | Zugriffsprotokoll auf der Konsole abschalten |
3. Desktop-App (verantwortlich: die nutzende Person bzw. Organisation; nur lokal)¶
| Daten | Ort | Inhalt |
|---|---|---|
| Einstellungen | Windows %APPDATA%\Krywerk\config.json, macOS ~/Library/Application Support/Krywerk/, Linux ~/.config/Krywerk/ |
Pfade der verschlüsselten Ordner, Laufwerksnamen, Adresse des Schlüsselservers, Zuordnung Team-Ordner ↔ Ordner |
| Gemerkte Passwörter, Geräteschlüssel | Windows DPAPI, macOS-Schlüsselbund, Linux Secret Service | Nur auf Wunsch der Person bzw. für Team-Ordner |
| Vertrauenswürdige Server | hub-trusted-hosts.json im Einstellungsordner |
Adressen bestätigter Schlüsselserver |
| Protokoll | Windows %APPDATA%\Krywerk\log.txt, macOS ~/Library/Logs/Krywerk/log.txt, Linux ~/.local/state/Krywerk/log.txt |
Fehlermeldungen; max. 1 MB, danach neu begonnen; keine Passwörter, Schlüssel oder Inhalte |
| Anmeldung | nur im Arbeitsspeicher | Access und Refresh Token, nie auf der Festplatte |
Die App sendet Daten nur an den Schlüsselserver, den die Person bzw. ihre IT eingetragen und bestätigt hat, und öffnet für die Anmeldung den Browser.
4. Rechte der betroffenen Personen¶
| Recht | Umsetzung in Krywerk Server |
|---|---|
| Auskunft (Art. 15) | Web-Verwaltung › Personen › Person: Konto, Gruppen, Geräte, Ordner; Protokoll filterbar nach Person; Export als CSV |
| Berichtigung (Art. 16) | Name/E-Mail kommen aus dem Anmeldedienst und werden bei der nächsten Anmeldung aktualisiert |
| Löschung (Art. 17) | Web-Verwaltung › Personen › Person: sperren, danach endgültig löschen – entfernt Konto, Schlüssel, Geräte, Mitgliedschaften, Freigaben und Bestätigungen; im Protokoll bleibt die Person nur als „Gelöschte Person“ mit Pseudonym. Mitglieder eines Notfallgremiums erst nach Neueinrichtung des Notfallzugriffs. Beim Anmeldedienst ebenfalls löschen, sonst entsteht bei erneuter Anmeldung ein neues, leeres Konto. |
| Einschränkung (Art. 18) | Person sperren |
| Datenübertragbarkeit (Art. 20) | Dateien liegen im offenen Cryptomator-Format am Speicherort der Organisation |
5. Hinweise für die verantwortliche Stelle¶
- Rechtsgrundlage, Zweckbindung und Information der Beschäftigten bzw. Lernenden legt die Organisation fest (z. B. Art. 6 Abs. 1 lit. b/c/e DSGVO, Landesdatenschutzrecht für Schulen).
- Der Speicherort (z. B. OneDrive) ist eine eigene Verarbeitung der Organisation; Krywerk sorgt dafür, dass dort nur verschlüsselte Daten liegen.
- Technische und organisatorische Maßnahmen: siehe
security.mdundbetrieb.md(TLS, Sicherung, Updates, Rollen). - Bei Austritt einer Person: Person in der Web-Verwaltung sperren, ggf. „Schlüssel erneuern“ für
betroffene Team-Ordner (
team-umstellung.md).