score

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-logout direkt bei score-api auf; score beendet alle Sitzungen mit der sid aus 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.