CodamAIDocs
Themafertig

Selbstauskunft: eigener Mandant und Sprache

Was eine angemeldete Person über sich selbst abfragen und ändern kann.

Ausprägungen
eigener MandantSprache lesenSprache ändernnicht angeboten

Worum es geht

Alles bisher in diesem Kapitel ist Arbeit für Plattform-Administratoren. Es gibt aber drei Endpunkte, die jede angemeldete Person für sich selbst aufrufen darf. Sie liegen unter /cias/me.

Die drei Endpunkte

Selbstauskunft

Wann: Die Oberfläche will anzeigen, in welchem Mandanten die Person gerade arbeitet.

GET /cias/me/tenant liefert den Mandanten dieser Anfrage, so wie CIAS ihn aus dem Token bestimmt hat, dazu seine Art und ob die Installation einen Mandanten verlangt. Die Antwort kommt auch, wenn die Person keinen Mandanten hat; dann steht null darin. So kann eine Oberfläche erklären, warum nichts geht.

Ergebnis: { "tenantKey": "nordbau", "type": "DYNAMIC", "required": true }

Wann: Die Oberfläche will Texte und Mails in der richtigen Sprache zeigen.

GET /cias/me/locale liefert die gespeicherte Sprache der Person und alle Sprachen, die die Installation anbietet. Hat die Person keine gespeichert, kommt die erste angebotene Sprache.

Ergebnis: { "locale": "de", "supported": ["de", "en"] }

Wann: Die Person wählt eine andere Sprache.

PUT /cias/me/locale mit { "locale": "en" }. CIAS speichert die Sprache als Attribut locale am Konto in Keycloak. Die Login-Seiten von Keycloak nutzen dasselbe Attribut.

Ergebnis: Nicht angebotene Sprache: 400 cias.user.unsupported-locale, die Meldung nennt die angebotenen.

Wann: Alles andere

Name, Adresse, Attribute oder Status kann eine Person über /cias/me weder lesen noch ändern. Die Adresse ist die Anmeldung und nicht änderbar; alles Übrige pflegt ein Plattform-Administrator.

Einstellungen und Fehler

Welche Sprachen angeboten werden, steht in codamai.cias.locale.supported, Standard de,en.

FallAntwort
nicht angemeldet403 von der Filterkette
Token ohne Benutzer-ID403 cias.user.caller-not-identified
Sprache leer400 cias.user.invalid-request
Sprache nicht angeboten400 cias.user.unsupported-locale
Keycloak nicht erreichbar (Sprache)503 cias.iam.unavailable

Weiter

Quellen im Code und in der Wissensdatenbank
  • CIAS/cias-user – UserSelfController, UserSelfService, UserSelfServiceUseCase, UnsupportedLocaleException, UserExceptionHandler
  • CIAS/cias-user – CiasUserConfiguration (codamai.cias.locale.supported)
  • CIAS/cias-iam-keycloak – KeycloakIdentityAdapter (setAttribute)
Suchen