Change user password
POST/company/users/changePass
Ermöglicht dem authentifizierten Benutzer, sein eigenes Passwort zu ändern.
Ziel
Sichere Passwortänderung durch den Benutzer selbst ermöglichen, unter Beibehaltung des Passwortverlaufs, um Wiederholungen zu vermeiden.
Anwendungsfälle
- Benutzer möchte sein Passwort regelmäßig ändern
- Benutzer hat sein Passwort vergessen und die Wiederherstellung genutzt (möchte nun ein persönliches)
- Sicherheitsrichtlinie erfordert regelmäßige Änderung
Authentifizierung
- Erfordert gültiges JWT (Middleware m.isLoged)
- Benutzer muss authentifiziert sein
Validierungen
- Das aktuelle Passwort muss gültig sein (model.isValidPassword)
- Das neue Passwort muss mit der Bestätigung übereinstimmen
- Das neue Passwort muss Sicherheitsanforderungen erfüllen:
- Mindestens 8 Zeichen
- Mindestens 1 Großbuchstabe
- Mindestens 1 Zahl
- Darf nicht mit den letzten 5 verwendeten Passwörtern identisch sein
- Erstellt Benachrichtigung bei Passwortänderung
Ablauf
- Benutzer sendet aktuelles Passwort und neues Passwort
- System prüft, ob das aktuelle Passwort korrekt ist
- System prüft, ob new_pass und confirm_pass übereinstimmen
- Wenn gültig, wird auf das neue gehashte Passwort aktualisiert
- Löscht recovery_token
- Erstellt Benachrichtigung über Passwortänderung
- Aktualisiert Token mit m.setNewToken()
Fehlermeldungen
- INVALID_PASSWORD (403): Aktuelles Passwort ist falsch
- PASSWORD_NOT_MATCH (405): new_pass und confirm_pass stimmen nicht überein
Request
Responses
- 200
- 400
- 401
- 403
- 405
Passwort erfolgreich geändert
Ungültige Anfrage. Mögliche Ursachen:
- Fehlende Felder in der Anfrage
- Fehler beim Speichern
Nicht autorisiert. Mögliche Ursachen:
- Ungültiges oder abgelaufenes JWT-Token
- Benutzer verfügt nicht über die erforderlichen Berechtigungen
Aktuelles Passwort ist falsch
Das neue Passwort und die Bestätigung stimmen nicht überein.