Grundlagen: was CIAS ist und was nicht
Die Begriffe und die Aufteilung, ohne die kein CIAS-Ablauf verständlich ist: die Objekte und ihre Eigentümer, Mandant und Gruppe, die zwei Rechte-Matrizen, die Schreibrichtung und die Obergrenze.
CIAS als Brücke zum Identity ProviderDie Objekte und wem sie gehörenMandant, Organisation, GruppeDie zwei Rechte-MatrizenDie Obergrenze: niemand vergibt mehr, als er hat
Registrierung
Wie aus einer Person ein Benutzer wird: ein Ablauf mit vier Varianten, E-Mail-Bestätigung, Passwort bei Keycloak, Freigabe, Mandantenzuordnung, Startrollen, Hooks und Mails.
Ein Ablauf, vier VariantenDie Zustände einer RegistrierungSelbstregistrierungAnlage durch den Plattform-AdministratorEinladung durch den Mandanten-AdministratorEine Einladung einlösenDie E-Mail ist das KontoE-Mail bestätigenDas Passwort setzenFreigabe durch einen AdministratorWoher der Mandant kommtWas beim Abschluss passiertStartrollen als RegelwerkEigene Logik: Hooks und EventsSchutz der öffentlichen EndpunkteAbgebrochene Registrierungen aufräumen
Benutzerverwaltung
Der fachliche Benutzerdatensatz in CIAS: Status, sperren, schließen, umziehen, Attribute pflegen, und warum die Reihenfolge der Schreibvorgänge über die Sicherheit entscheidet.
Der BenutzerdatensatzDer Lebenslauf eines BenutzersDie SchreibreihenfolgeSperren, entsperren, schließenBestehende Konten übernehmenUmbenennen und Heimatmandant wechselnAttribute einer Person pflegenPasswort-Setz-Link erneut schickenSelbstauskunft: eigener Mandant und Sprache
Mandanten
Der Mandant als Trennungsgrenze: statisch oder dynamisch, sein geschäftlicher Status, sein technischer Rollout, wie er bei jeder Anfrage aufgelöst und zugelassen wird und wie man zwischen Mandanten wechselt.
Statische und dynamische MandantenDer Lebenslauf eines MandantenEinen Mandanten anlegen und bereitstellenDer MandantenschlüsselMandanten sperren, schließen, GültigkeitDen Mandanten einer Anfrage bestimmenDen Mandanten zulassen (Mandanten-Tor)Zwischen Mandanten wechselnIn SINGLE zählt der Mandant im Token nichtArbeiten für einen Mandanten ohne Anfrage
Rollen und Rechte vergeben
Der Rollenkatalog, die Ebenen einer Rolle, wie Module ihre Rollen anmelden, wer Rollen vergeben darf, befristete Vergaben und wie eine Rolle ins Token kommt.
Der RollenkatalogRealm-Rolle, Client-Rolle, OrganisationsrolleModule melden ihre Rollen anDer Abgleich mit KeycloakWie eine Rolle aus dem Code ins Token kommtEine Rolle vergebenBefristete RollenEine Rolle entziehenDie Realm-Rollen der Plattform
Benutzerattribute
Angaben am Konto, die als Claim ins Token kommen und in CDMS Zeilen filtern: woher sie kommen, wie Module sie anmelden, wer sie schreiben darf und für welche Mandanten ein Wert gilt.
Zwei Herkünfte von AttributenAttribute anmeldenDer Weg ins TokenWer ein Attribut schreiben darfEin Wert pro Person oder pro MandantWie ein Attribut wieder verschwindet
Anbindung an den Identity Provider
Wie CIAS mit Keycloak spricht, ohne dass die Fachmodule Keycloak kennen: Ports und Adapter, der Keycloak-Adapter, der Speicher-Adapter für Tests und die Keycloak-Erweiterung.
Ports und AdapterDer Keycloak-AdapterDer Speicher-Adapter für Tests und EntwicklungDie Keycloak-Erweiterung für den Passwort-Link
Sicherheitsprinzipien
Die Grundsätze hinter allen CIAS-Abläufen, an einer Stelle: im Zweifel ablehnen, ununterscheidbare Ablehnungen, keine Standardwerte für Rechte und das Verhalten bei Ausfällen.
Im Zweifel ablehnenAblehnungen, die nichts verratenWenn CIAS oder Keycloak ausfällt