Disable user (Admin only)
DELETE/company/users/delete/:id
Deaktiviert einen Benutzer durch Setzen von status=false. Der Benutzer bleibt in der Datenbank, kann sich aber nicht mehr anmelden.
Ziel
Administratoren ermöglichen, Benutzer vorübergehend zu deaktivieren, ohne sie dauerhaft aus der Datenbank zu löschen.
Anwendungsfälle
- Vorübergehende Deaktivierung eines Benutzers
- Zugangssperre während der Untersuchung eines Vorfalls
- Temporäre Sperrung eines Benutzers aus Sicherheitsgründen
Authentifizierung & Autorisierung
- Gültiges JWT erforderlich (Middleware m.isLoged)
- Rolle admin oder dev erforderlich (Middleware m.isAdmin)
Verhalten
- Sucht Benutzer anhand der ID
- Setzt user.status = false
- Gibt aktualisierten Benutzer zurück
- Löscht den Datensatz nicht aus der Datenbank
Hinweise
- Dieser Endpunkt deaktiviert nur (status=false)
- Löscht den Datensatz NICHT physisch
- Unterscheidet sich von DELETE /:id, das einen Soft Delete durchführt
- Der Benutzer kann durch Ändern von status auf true reaktiviert werden
Vergleich
- DELETE /:id: Vollständiger Soft Delete (deleted=true, deletedAt gesetzt)
- DELETE /delete/:id: Deaktiviert nur (status=false)
- PUT /disabled/disable/:id: Soft Delete mit zusätzlichem Grund
Request
Responses
- 200
- 401
- 403
- 404
Benutzer erfolgreich deaktiviert
Nicht autorisiert (Admin- oder Dev-Rolle erforderlich)
Verboten (Benutzer ist kein Administrator)
Benutzer nicht gefunden.