feat: Phase 2 – Benutzerverwaltung (CRUD-API, Profil, UI)
This commit is contained in:
@@ -134,8 +134,24 @@ Security Hardening (Penetrationstests, Dependency/Container-Scans, HSTS, Backup/
|
||||
| POST | `/api/v1/auth/logout` | Session | Beendet die aktuelle Session |
|
||||
| GET | `/api/v1/auth/me` | Session | Angemeldeter Benutzer (Id, Rolle, …) |
|
||||
| GET | `/api/v1/health` | Public | Systemstatus (Backend, DB-Latenz, Version, Uptime) |
|
||||
| GET | `/api/v1/users` | Admin | Alle Benutzer |
|
||||
| POST | `/api/v1/users` | Admin | Benutzer anlegen (409 bei Duplikat) |
|
||||
| GET | `/api/v1/users/:id` | Admin | Einzelner Benutzer |
|
||||
| PATCH | `/api/v1/users/:id` | Admin | Bearbeiten / Aktivieren / Deaktivieren |
|
||||
| PATCH | `/api/v1/users/:id/password` | Admin | Passwort zurücksetzen |
|
||||
| DELETE | `/api/v1/users/:id` | Admin | Benutzer löschen |
|
||||
| GET | `/api/v1/profile` | Session | Eigenes Profil |
|
||||
| PATCH | `/api/v1/profile/password` | Session | Eigenes Passwort ändern |
|
||||
|
||||
OpenAPI/Swagger UI: `/api/docs` · Ab Phase 2: `/api/v1/users/*`, `/api/v1/modules/*`, `/api/v1/permissions/*`, `/api/v1/audit/*`.
|
||||
OpenAPI/Swagger UI: `/api/docs` · Ab Phase 3: `/api/v1/modules/*`, `/api/v1/permissions/*`, `/api/v1/audit/*`.
|
||||
|
||||
### Schutzregeln der Benutzerverwaltung
|
||||
|
||||
- Keine Selbst-Deaktivierung und keine Selbst-Löschung (400)
|
||||
- Der letzte aktive Administrator kann nicht herabgestuft, deaktiviert oder gelöscht werden (400)
|
||||
- Deaktivierte Benutzer werden sofort von allen Sessions abgemeldet
|
||||
- Passwort-Reset (Admin) meldet den Benutzer von allen Sessions ab
|
||||
- Eigenes Passwort ändern meldet alle übrigen Sessions ab (aktuelle bleibt aktiv)
|
||||
|
||||
## 9. Modul-Vertrag (Ausblick Phase 3+)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user