CodamAIDocs
Themafertig

Sperren, entsperren, schließen

Die drei Statusoperationen im Ablauf, und dass Schließen das Konto deaktiviert, aber nicht löscht.

Ausprägungen
sperrenentsperren (reaktivieren)schließenkein Löschen

Worum es geht

Ein Plattform-Administrator kann einer Person den Zugang nehmen und ihn wieder geben. Dafür gibt es drei Aufrufe:

AufrufWirkungumkehrbar
POST /cias/admin/users/{id}/suspendsperrenja
POST /cias/admin/users/{id}/reactivateentsperren–
POST /cias/admin/users/{id}/closeschließennein

Die drei Aufrufe

Sperren, entsperren, schließen

Wann: Verdacht auf Missbrauch, Klärung offen, vorübergehende Pause.

  1. 1
    Admin→CIAS
    POST /cias/admin/users/{id}/suspend mit { "reason": "…" }
  2. 2
    CIAS
    Plattform-Administrator? Grund angegeben?
    sonst 403 bzw. 400
  3. 3
    CIAS→Keycloak
    deaktiviert das Konto
  4. 4
    CIAS
    Status → SUSPENDED, Event Suspended mit Grund
    Ergebnis: 200 mit dem Datensatz

Ergebnis: Aus CLOSED heraus: 409 cias.user.invalid-state.

Wann: Die Klärung ist abgeschlossen.

  1. 1
    Admin→CIAS
    POST /cias/admin/users/{id}/reactivate, ohne Inhalt
  2. 2
    CIAS
    Status → ACTIVE
  3. 3
    CIAS→Keycloak
    aktiviert das Konto
    Ergebnis: 200 mit dem Datensatz, Event Activated

Ergebnis: Aus CLOSED heraus: 409.

Wann: Die Person verlässt das Unternehmen, das Konto soll dauerhaft enden.

  1. 1
    Admin→CIAS
    POST /cias/admin/users/{id}/close mit { "reason": "…" }
  2. 2
    CIAS→Keycloak
    deaktiviert das Konto
  3. 3
    CIAS
    Status → CLOSED, Event Closed mit Grund
    Ergebnis: 200 mit dem Datensatz

Ergebnis: Endgültig. Ein zweiter Aufruf ändert nichts.

Warum nicht löschen?

  • In CDMS hängen Daten an der Person: Zeilen in Benutzer-Modellen gehören ihr, und die Historie nennt sie. Ein gelöschtes Konto ließe diese Verweise ins Leere zeigen.
  • Das Audit soll auch später noch sagen können, wer wann was getan hat.

Was sofort wirkt und was nicht

Sperren und Schließen deaktivieren das Konto in Keycloak. Damit gilt:

Wirkung
neue Anmeldungsofort unmöglich
Token erneuernscheitert beim nächsten Refresh
Access-Token, das die Person schon hatgilt bis zu seinem Ablauf weiter

Laufende Sitzungen beendet CIAS nicht eigens. Wie lange ein vorhandenes Token noch wirkt, steht unter Warum ein Rechteentzug verzögert wirkt.

Fehler

FallAntwort
kein Plattform-Administrator403 cias.user.administration-denied
Person unbekannt404 cias.user.not-found
Grund fehlt400 cias.user.invalid-request
Person ist geschlossen (sperren, entsperren)409 cias.user.invalid-state
Keycloak nicht erreichbar503 cias.iam.unavailable

Weiter

Quellen im Code und in der Wissensdatenbank
  • CIAS/cias-user – UserAdminController (suspend, reactivate, close), UserRestDtos, UserService, UserExceptionHandler
  • CIAS/cias-iam-keycloak – KeycloakIdentityAdapter (enable, disable)
  • CIAS/cias-user/docs/adr – ADR-017 §5
Suchen