Dienstkonto-Kennzeichen in der Benutzerverwaltung setzbar machen

Nachgezogen: Das Feld isServiceAccount lag in der Datenbank, war aber nirgends
setzbar - weder im Formular noch ueber die API. Der Betreiber haette es nicht
aktivieren koennen, damit waere die R182-Einstufung wirkungslos geblieben.

Jetzt Ankreuzfeld "Dienstkonto" im Benutzerformular mit Erklaerung im
Klartext, Feld in der Mass-Assignment-Whitelist (gilt damit auch beim Anlegen),
im Service-Typ und in allen drei select-Bloecken, damit es beim Bearbeiten
vorbelegt wird.

Verifiziert: Whitelist laesst das Feld durch und blockt Fremdfelder weiterhin,
Wert ueber Prisma lesbar, tsc und vite build gruen.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
2026-08-24 10:09:28 +02:00
co-authored by Claude Opus 5
parent 910c94daa1
commit b696980793
4 changed files with 42 additions and 0 deletions
+14
View File
@@ -97,6 +97,20 @@ isolierte Instanz (keine Multi-Tenancy im Code), Provisioning + Abrechnung
## ✅ Erledigt
- [x] **🖱️ Dienstkonto-Kennzeichen in der Benutzerverwaltung** (2026-08-24)
- Nachgezogen: Das Feld `isServiceAccount` lag zwar in der Datenbank, war
aber **nirgends setzbar** weder im Formular noch ueber die API. Der
Betreiber haette es nicht aktivieren koennen, damit waere die
R182-Einstufung wirkungslos geblieben.
- Jetzt: Ankreuzfeld „Dienstkonto“ im Benutzerformular unter den
zusaetzlichen Berechtigungen, mit Erklaerung im Klartext (planmaessige
Anmeldungen als Routine, dafuer Meldung bei AUSBLEIBEN). Feld in der
Whitelist (`USER_UPDATABLE_FIELDS`, damit auch beim Anlegen), im
Service-Typ und in allen drei `select`-Bloecken, damit es beim Bearbeiten
vorbelegt wird.
- Verifiziert: Whitelist laesst das Feld durch und blockt Fremdfelder
weiterhin; Wert ueber Prisma lesbar; `tsc` und `vite build` gruen.
- [x] **🚨 Retention-Governance + Heartbeat-Wachhund (Pentest R183, R182-Rest)** (2026-08-24)
- **R183-01 (HIGH)** Die geladene Waffe war ungegatet, der Abzug gegatet:
`PUT /retention-policies/{id}` nahm `retentionDays: 0` **ohne