Anmelden mit Keycloak
Dieser Artikel erläutert, wie Single Sign-on mit Keycloak in MobilityManager funktioniert, sowohl für Benutzer als auch für den Administrator, der es einrichtet.
Anmelden mit Keycloak
- Öffnen Sie die Anmeldeseite und wählen Sie Ihr Unternehmen (Mandant) aus.
- Wählen Sie die Single-Sign-on-Schaltfläche. Wenn der Anbieter Keycloak ist, lautet seine Standardbeschriftung Login with Keycloak (Ihr Administrator hat möglicherweise eine benutzerdefinierte Beschriftung festgelegt).
- Sie werden zu Ihrem Keycloak-Realm weitergeleitet, um sich anzumelden.
- Keycloak leitet Sie zurück an MobilityManager, das die Antwort überprüft und Ihre Sitzung startet.
Hinweis: Bei Ihrer ersten Keycloak-Anmeldung wird automatisch ein Konto mit der Rolle Driver erstellt. Siehe „Wie Single-Sign-on-Benutzer bereitgestellt werden“.
Was Ihr Administrator konfiguriert
Ein SystemAdmin erstellt einen Client in Ihrem Keycloak-Realm und gibt diese Werte pro Unternehmen in MobilityManager ein:
| Einstellung | Wert für Keycloak |
|---|---|
| Provider | Keycloak |
| Authority | Ihre Realm-URL, zum Beispiel https://keycloak.example.com/realms/<realm> |
| Client ID | Die im Keycloak-Realm konfigurierte Client ID |
| Client secret | Das Client Secret für einen vertraulichen Client (sicher gespeichert, niemals zurückgezeigt) |
| Redirect URI | Die Callback-URL von MobilityManager, dem Keycloak-Client als gültige Redirect URI hinzugefügt |
| Scopes | Standardmäßig openid profile email |
| Button text | Optional; Standardwert „Login with Keycloak“ |
Wie der Keycloak-Flow funktioniert
Wenn ein Benutzer SSO startet, erstellt MobilityManager eine Autorisierungsanfrage an den Keycloak-Endpunkt unter {authority}/protocol/openid-connect/auth, fordert einen Authorization Code an und fügt einen State-Wert zum CSRF-Schutz hinzu. Nachdem sich der Benutzer authentifiziert hat, gibt Keycloak einen Identitätstoken zurück, den MobilityManager anhand des veröffentlichten Discovery-Dokuments und der Signaturschlüssel des Realms validiert und dabei Signatur, Issuer, Audience und Gültigkeitsdauer prüft, bevor die Sitzung gestartet wird.
Tipp: Die Authority muss auf den spezifischen Realm verweisen, nicht auf die Keycloak-Basis-URL. MobilityManager liest das /.well-known/openid-configuration des Realms von dieser Authority, um die Endpunkte und Schlüssel zu ermitteln.
Fehlerbehebung
| Symptom | Wahrscheinliche Ursache |
|---|---|
| „Invalid redirect_uri“ bei Keycloak | Die Callback-URL ist nicht als gültige Redirect URI beim Client aufgeführt. |
| „Identity provider token validation failed“ | Authority verweist auf den falschen Realm, die Client ID stimmt nicht mit der Token-Audience überein oder der Client ist öffentlich statt vertraulich. |
| „OIDC configuration is incomplete for this tenant“ | Authority oder Client ID fehlt in den SSO-Einstellungen des Unternehmens. |
| Ein E-Mail-Konto existiert bereits | Ein lokales Passwort-Konto verwendet dieselbe E-Mail-Adresse; ein Administrator muss es ausdrücklich verknüpfen. |
Verwandte Artikel
- Single Sign-on: Ein Überblick
- Anmelden mit Azure AD (Microsoft Entra ID)
- Anmelden mit ADFS oder einem generischen OIDC-Anbieter
- Wie Single-Sign-on-Benutzer bereitgestellt werden