Identität
Anbindung von Identitätsanbietern über Keycloak und OpenID Connect.
score-api spricht ausschließlich OpenID Connect – mit Keycloak als Broker. Welche Identitätsanbieter dahinter hängen, ist Konfiguration in Keycloak, nicht in score.
Anbieter
- Landes-Identitätsmanagement für Lehrkräfte und Verwaltung, über OIDC oder SAML
- Schul-Identitätsanbieter für Schüler und Eltern
- lokale Konten in Keycloak, wo es keinen Anbieter gibt, mit Passkey oder TOTP
Der Proof of Concept simuliert Landes- und Schul-IdP als eigene Keycloak-Realms.
Was score von der Anmeldung braucht
| Claim | Herkunft | Nutzung |
|---|---|---|
identity_provider |
Keycloak-Mapper | Alias des ursprünglichen Anbieters |
upstream_sub |
Keycloak-Mapper | Subject beim ursprünglichen Anbieter |
Das Konto ist (identity_provider, upstream_sub). Die Verknüpfung zur Person kommt aus den
Login-Kennungen im Import. Rollen und feine Rechte stammen aus den Stammdaten,
nicht aus Claims.
Abmeldung
- Lokales Logout beendet die score-Sitzung und die Keycloak-Sitzung; die Sitzung beim ursprünglichen Anbieter bleibt.
- Back-Channel-Logout: Keycloak ruft
POST /auth/backchannel-logoutdirekt bei score-api auf; score beendet alle Sitzungen mit dersidaus dem geprüften Logout-Token.
Konfiguration
score-api wird nur über Umgebungsvariablen konfiguriert, darunter Issuer, Client und Sitzungsdauern. Liegt Keycloak in einem anderen Netz als der Browser, holt score-api die Discovery über eine eigene URL und prüft den Issuer gegen den erwarteten Wert.