Single Sign-On: OpenID Connect (OIDC)
Aus lernlog Hilfesystem
Die OIDC-Schnittstelle muss zunächst konfiguriert und zur Anwendung der Konfiguration die lernlog-Instanz neu gestartet werden. Der Neustart muss mit dem Hoster/Anbieter von lernlog durchgeführt werden. Bei Fragen oder Problemen steht der Support von lernlog über das Online-Support-Formular zur Verfügung.
Nach dem Neustart lässt sich die SSO-Funktionalität jederzeit de-/aktivieren.
Nutzer*innen müssen in lernlog mit demselben Nutzernamen wie im ID-Provider existieren, um sich über OIDC-SSO einloggen zu können.
- Überprüfe, ob du einen Client/Zugriff für lernlog in deinem Identitätsanbieter eingerichtet hast und ob dir folgende Daten vorliegen:
- I.d.R. erhält man von dem ID-Provider die sensiblen Daten: Client-Namen, Client-ID und das Client-Secret.
- Die restlichen, notwendigen Daten findet man im JSON-Format hinter der OpenID Connect-Metadaten-URL (z.B. https://YOUR-ID_PROVIDER_URL/.well-known/openid-configuration, oder
https://YOUR-ID_PROVIDER_URL/realm/MY-REALM/.well-known/openid-configuration):

- Folgende Werte sind für die weitere Konfiguration relevant (Angabe → Name in lernlog):
- Client-Name: Dies ist der Name des Clients (Serviceanbieters), der mit dem OpenID Connect-Provider interagiert.
- Client-ID: Dies ist die eindeutige Identifikationsnummer für den Client (Serviceanbieter).
- Client-Secret: Dies ist eine Zeichenabfolge, die zu Ver- und Entschlüsselung von dem Client und dem ID-Provider gemeinsam verwendet wird, um die Integrität ihrer Datenübertragung sicherzustellen.
- Autorisierungs-Endpoint (
authorization_endpoint): Dies ist die URL, an der die Nutzer*innen ihre Authentifizierung durchführen können. Hier müssen sie ihr Nutzerkonto und Passwort eingeben oder sich mit einem externen Anbieter (z.B. itsLearning, Keycloak, …) anmelden. - Token-Endpoint (
token_endpoint): Dies ist die URL, an der der Serviceanbieter ein Token anfordern kann, um den Zugriff auf die von dem*der Nutzer*in eingerichteten Daten zu überprüfen. - Userinfo-Endpoint(
userinfo_endpoint): Dies ist die URL, an der zusätzliche Informationen über den*die Nutzer*in abgerufen werden können (z.B. sein Name, seine Email-Adresse). - JWKS-URL (
jwks_uri): Dies ist die URL, an der sich das JWK-Set (JSON Web Key Set) befindet. Das JWK-Set beinhaltet alle Schlüssel, die vom OpenID Connect-Provider verwendet werden können. - PKCE Protokoll: Wenn aktiv, wird die Sicherheit der SSO-Verbindung durch ein ergänzendes Protokoll verbessert, falls der ID-Provider es unterstützt.
- Scopes: Für welche Art von Zugriffen authentifiziert man sich gegenüber dem ID-Provider; kommaseparierte Auflistung (mindestens notwendig
openid, je nach ID-Provider auch zusätzliche Werte notwendig; z.B. iServopenid,profile).