Files
harheimertc/DATENSCHUTZ.md

3.9 KiB

Datenschutz und Verschlüsselung - Harheimer TC

🔒 Verschlüsselung implementiert

Verschlüsselte Daten:

  • Mitgliedschaftsanträge: Alle persönlichen Daten (Name, Adresse, E-Mail, Telefon, Bankdaten)
  • Benutzerdaten: E-Mail, Name, Telefon (in users.json)
  • Mitgliederdaten: Name, E-Mail, Telefon, Adresse (in members.json)

Nicht verschlüsselte Daten:

  • News-Artikel: Autor-Namen (öffentlich sichtbar)
  • Konfiguration: Vereinsdaten, Trainingszeiten (öffentlich)
  • Termine: Event-Daten (öffentlich)

🛡️ Sicherheitsmaßnahmen

Verschlüsselung:

  • Algorithmus: AES-256-GCM
  • Schlüsselableitung: PBKDF2 mit 100.000 Iterationen
  • Salt: 64 Bytes zufällig generiert
  • IV: 16 Bytes zufällig generiert
  • Auth-Tag: 16 Bytes für Integrität

Passwort-Sicherheit:

  • Hashing: bcryptjs mit Salt
  • Rounds: 10 (konfigurierbar)

Datenzugriff:

  • Authentifizierung: JWT-Token
  • Autorisierung: Rollenbasierte Zugriffskontrolle
  • Session-Management: Sichere Cookies

📋 Datenverarbeitung

Mitgliedschaftsanträge:

  1. Eingabe: Formular auf Website
  2. Verschlüsselung: Sofortige Verschlüsselung aller persönlichen Daten
  3. Speicherung: Verschlüsselte Dateien in server/data/membership-applications/
  4. E-Mail: Benachrichtigung an Vorstand/Trainer
  5. Genehmigung: Entschlüsselung und Übertragung in Mitgliederliste
  6. Archivierung: Original-Anträge bleiben verschlüsselt gespeichert

Benutzerdaten:

  • Registrierung: E-Mail, Name, Telefon
  • Login: E-Mail, Passwort (gehashed)
  • Profil: Bearbeitbare Kontaktdaten
  • Rollen: admin, vorstand, mitglied

Mitgliederdaten:

  • Manuell hinzugefügt: Direkt in members.json
  • Aus Anträgen: Nach Genehmigung übertragen
  • Zugriff: Nur für "vorstand" Rolle sichtbar

🔄 Datenfluss

Mitgliedschaftsformular
    ↓
Verschlüsselung (AES-256-GCM)
    ↓
Speicherung (verschlüsselt)
    ↓
E-Mail-Benachrichtigung
    ↓
CMS-Verwaltung
    ↓
Genehmigung/Ablehnung
    ↓
Bei Genehmigung: Übertragung in Mitgliederliste

⚖️ GDPR-Konformität

Rechtmäßigkeit:

  • Einwilligung: Explizite Zustimmung im Formular
  • Vertragserfüllung: Mitgliedschaftsvertrag
  • Berechtigtes Interesse: Vereinsverwaltung

Betroffenenrechte:

  • Auskunft: Über gespeicherte Daten
  • Berichtigung: Korrektur falscher Daten
  • Löschung: Recht auf Vergessenwerden
  • Einschränkung: Verarbeitung einschränken
  • Datenübertragbarkeit: Export der Daten

Datenspeicherung:

  • Zweckbindung: Nur für Vereinszwecke
  • Minimierung: Nur notwendige Daten
  • Genauigkeit: Aktuelle und korrekte Daten
  • Speicherbegrenzung: Löschung nach Zweckerfüllung

🔧 Technische Implementierung

Verschlüsselungsfunktionen:

// Verschlüsselung
encryptObject(data, password)

// Entschlüsselung  
decryptObject(encryptedData, password)

// Passwort-Hashing
hashPassword(password, salt)

// Passwort-Verifikation
verifyPassword(password, hash, salt)

Environment-Variablen:

# Verschlüsselungsschlüssel (MUSS in Produktion geändert werden!)
ENCRYPTION_KEY=your_secure_encryption_key_here

# JWT-Secret
JWT_SECRET=your_jwt_secret_here

🚨 Sicherheitshinweise

Produktionsumgebung:

  • Verschlüsselungsschlüssel: MUSS geändert werden!
  • JWT-Secret: MUSS geändert werden!
  • HTTPS: Zwingend erforderlich
  • Backup: Verschlüsselte Backups

Entwicklungsumgebung:

  • E-Mails: Nur an tsschulz@tsschulz.de
  • Test-Daten: Keine echten persönlichen Daten
  • Logs: Keine sensiblen Daten in Logs

📞 Kontakt

Bei Fragen zum Datenschutz:


Stand: Januar 2025
Version: 1.0
Letzte Aktualisierung: Implementierung der Verschlüsselung