Zum Hauptinhalt springen

Reset user password (Admin only)

POST 

/company/users/change/:id

Ermöglicht einem Administrator, das Passwort eines beliebigen Benutzers des Unternehmens zurückzusetzen, indem ein neues zufälliges Passwort generiert und per E-Mail versendet wird.

Ziel

Administratoren die Wiederherstellung des Benutzerzugriffs zu erleichtern, wenn Benutzer ihr Passwort vergessen haben oder Hilfe benötigen.

Anwendungsfälle

  • Benutzer hat sein Passwort vergessen und bittet den Administrator um Hilfe
  • Administrator muss den Zugriff eines Benutzers wiederherstellen
  • Sicherheitsreset auf Anfrage des Benutzers

Authentifizierung & Autorisierung

  • Erfordert gültiges JWT (Middleware m.isLoged)
  • Erfordert Admin- oder Dev-Rolle (Middleware m.isAdmin)

Verhalten

  • Wenn kein Passwort angegeben wird, wird automatisch eines mit tools.generatePass() generiert
  • Das generierte Passwort hat 8 Zeichen mit Großbuchstaben, Kleinbuchstaben und Zahlen
  • Das Passwort wird mit model.getPassword() gehasht
  • Sendet eine E-Mail mit dem neuen Passwort unter Verwendung von mail.sendNewPass()
  • Überprüft, ob der Benutzer zum Unternehmen des Administrators gehört

Validierungen

  • Benutzer muss existieren
  • Benutzer muss zum Unternehmen des Administrators gehören
  • Wenn ein Passwort im Body angegeben wird, wird dieses verwendet

Passwortbehandlung

  • Wenn ein Passwort im Body angegeben wird, wird dieses verwendet
  • Wenn keines angegeben wird, wird automatisch eines generiert: 8 Zeichen, Großbuchstaben, Kleinbuchstaben, Zahlen
  • Das Passwort wird mit model.getPassword() gehasht
  • Es wird per E-Mail an den Benutzer in seiner konfigurierten Sprache (user.i18n) gesendet

Hinweise

  • Unterscheidet sich von POST /changePass, wo der Benutzer sein eigenes Passwort ändert
  • Dieser Endpoint dient dazu, dass der Administrator das Passwort eines anderen Benutzers zurücksetzt

Request

Responses

Passwort erfolgreich zurückgesetzt und per E-Mail versendet.