# Admin-Passwort setzen Dieses Script ermöglicht es, das Passwort für den Admin-User (`admin@harheimertc.de`) zu setzen oder zu ändern. ## Verwendung ### Mit Passwort als Argument ```bash node scripts/set-admin-password.js "mein-neues-passwort" ``` ### Interaktiv (Passwort wird abgefragt) ```bash node scripts/set-admin-password.js ``` Das Script fragt dann nach dem neuen Passwort. ## Funktionen - **Findet oder erstellt den Admin-User**: Falls der Admin-User nicht existiert, wird er automatisch erstellt - **Passwort-Hashing**: Das Passwort wird mit bcrypt gehasht (10 Runden) - **Verschlüsselte Speicherung**: Die Benutzerdaten werden verschlüsselt gespeichert - **Validierung**: Prüft, dass das Passwort mindestens 8 Zeichen lang ist ## Voraussetzungen - `ENCRYPTION_KEY` muss in der `.env` Datei gesetzt sein (für verschlüsselte Speicherung) - Die Datei `server/data/users.json` muss existieren oder wird automatisch erstellt ## Beispiel ```bash # Passwort direkt setzen node scripts/set-admin-password.js "MeinSicheresPasswort123!" # Interaktiv node scripts/set-admin-password.js # Eingabeaufforderung: Neues Passwort für admin@harheimertc.de: ``` ## Sicherheit - Das Passwort wird niemals im Klartext gespeichert - Es wird mit bcrypt gehasht (10 Runden) - Die Benutzerdaten werden verschlüsselt gespeichert - Das Passwort wird nicht in der Kommandozeilen-Historie gespeichert (bei interaktiver Eingabe) ## Fehlerbehandlung Falls die Entschlüsselung der Benutzerdaten fehlschlägt: - Prüfe, ob `ENCRYPTION_KEY` in der `.env` Datei korrekt gesetzt ist - Stelle sicher, dass der Schlüssel mit dem übereinstimmt, der zum Verschlüsseln verwendet wurde