Zum Hauptinhalt springen

Ich kann mich nicht mit SSO anmelden

VaultPAM unterstützt Single Sign-On (SSO) über OpenID Connect (OIDC). Wenn die SSO-Anmeldung fehlschlägt, liegt die Ursache fast immer in einer von fünf Kategorien: OIDC-Fehlkonfiguration, Zeitabweichung zwischen VaultPAM und dem IdP, der Benutzer ist im Identity Provider nicht bereitgestellt, eine falsche Redirect-URI oder eine Keycloak-Realm-Einstellung. Administratoren sollten diese der Reihe nach durcharbeiten — die OIDC-Fehlkonfiguration ist mit Abstand die häufigste Ursache.

Symptome

  • Die SSO-Schaltfläche auf der Anmeldeseite leitet zum Identity Provider weiter, gibt dann aber einen Fehler zurück.
  • Fehlermeldungen, die Ihnen begegnen können:
    • invalid_client oder unauthorized_client
    • redirect_uri_mismatch
    • access_denied
    • invalid_grant: Session not active
    • User not found oder Account is not fully set up
    • Eine allgemeine Seite „Something went wrong" nach einer Weiterleitung zurück vom IdP
  • Der Benutzer kann sich auf der IdP-Seite authentifizieren, aber VaultPAM meldet ihn nicht an.

Ursachen

1. OIDC-Fehlkonfiguration

Die in VaultPAM konfigurierte Client-ID, das Client-Secret oder die OIDC-Discovery-URL stimmt nicht mit dem überein, was der Identity Provider registriert hat.

Prüfung: Überprüfen Sie unter Organization → Security → SSO Settings:

  • OIDC Issuer URL wird aufgelöst und gibt ein gültiges .well-known/openid-configuration-Dokument zurück.
  • Client ID stimmt exakt mit dem überein, was in der IdP-Anwendung registriert ist.
  • Client Secret wurde nicht auf der IdP-Seite rotiert, ohne VaultPAM zu aktualisieren.

Lösung: Aktualisieren Sie das nicht übereinstimmende Feld und speichern Sie. Testen Sie, indem Sie die SSO-Anmeldung erneut versuchen.

2. Zeitabweichung zwischen VaultPAM und dem IdP

OIDC-Token enthalten die Claims iat (issued-at) und exp (expiry). Wenn die Uhren auf dem VaultPAM-Server oder dem IdP mehr als ±60 Sekunden voneinander abweichen, schlägt die Token-Validierung mit einem invalid_grant- oder „Session not active"-Fehler fehl.

Prüfung: Führen Sie auf dem VaultPAM-Host (oder Kubernetes-Knoten) aus:

date -u

Vergleichen Sie das Ergebnis mit der Uhr des IdP (sichtbar im iat-Claim eines dekodierten JWT oder über die IdP-Admin-Konsole prüfbar). Die Differenz muss unter 60 Sekunden liegen.

Lösung: Stellen Sie sicher, dass beide Systeme ihre Uhren mit einer NTP-Quelle synchronisieren. Unter Linux: timedatectl set-ntp true. In Kubernetes wird die Knoten-Uhr vom VM-Host geerbt — stellen Sie sicher, dass die Hypervisor-Ebene NTP konfiguriert hat.

3. Benutzer nicht im IdP bereitgestellt

Das Konto des Benutzers existiert in VaultPAM, wurde aber im Identity Provider nicht erstellt oder aktiviert, oder die E-Mail-Adresse des IdP-Kontos stimmt nicht mit der E-Mail-Adresse des VaultPAM-Kontos überein.

Prüfung: Bestätigen Sie in der IdP-Admin-Konsole, dass das Benutzerkonto existiert und aktiv ist. Überprüfen Sie, dass die E-Mail-Adresse exakt übereinstimmt (bei einigen IdPs gilt eine Groß-/Kleinschreibung-sensitive Übereinstimmung).

Lösung: Erstellen oder aktivieren Sie das Benutzerkonto im IdP oder aktualisieren Sie die E-Mail-Adresse in einem der Systeme, damit beide übereinstimmen. Wenn Ihre Organisation SCIM-Provisioning verwendet, bestätigen Sie, dass der Provisioning-Connector aktiv ist und der Benutzer zur bereitgestellten Gruppe gehört.

4. Falsche Redirect-URI

Die Redirect-URI, die VaultPAM während des OIDC Authorization Code Flow sendet, muss exakt mit einer der erlaubten Redirect-URIs übereinstimmen, die in der IdP-Anwendung registriert sind. Schon ein abweichender abschließender Schrägstrich verursacht einen redirect_uri_mismatch-Fehler.

Prüfung: Notieren Sie unter Organization → Security → SSO Settings die angezeigte Callback URL. Öffnen Sie die IdP-Anwendungsregistrierung und überprüfen Sie, dass genau diese URI in den erlaubten Redirect-URIs aufgeführt ist.

Lösung: Fügen Sie die exakte Callback-URL zur Liste der erlaubten Redirect-URIs der IdP-Anwendung hinzu und speichern Sie.

5. Keycloak-Realm-Einstellungen

Wenn VaultPAM eine eingebettete oder selbst gehostete Keycloak-Instanz verwendet, können fehlkonfigurierte Realm-Einstellungen die Anmeldung verhindern, selbst wenn der OIDC-Client korrekt konfiguriert ist.

Häufige Keycloak-spezifische Probleme:

  • Der Realm ist deaktiviert oder befindet sich im schreibgeschützten Modus.
  • Der Access Type des Clients ist auf public gesetzt, während VaultPAM confidential erwartet.
  • Die erforderlichen Scopes openid, email oder profile sind im Client nicht zugeordnet.
  • Valid Redirect URIs im Keycloak-Client enthält die VaultPAM-Callback-URL nicht.

Prüfung: Öffnen Sie die Keycloak-Admin-Konsole, navigieren Sie zu Realms → [realm name] → Clients → [VaultPAM client] und überprüfen Sie:

  • Client ist Enabled.
  • Access Type ist confidential.
  • Valid Redirect URIs enthält die VaultPAM-Callback-URL.
  • Client Scopes enthalten openid, email und profile.

Lösung: Korrigieren Sie die Keycloak-Client-Einstellungen und speichern Sie. Für die meisten Keycloak-Konfigurationsänderungen ist kein Neustart erforderlich.

Lösungsschritte

  1. Öffnen Sie Organization → Security → SSO Settings und überprüfen Sie, dass OIDC Issuer URL, Client ID und Client Secret exakt mit der IdP-Anwendungsregistrierung übereinstimmen.
  2. Prüfen Sie die Server-Uhren auf dem VaultPAM-Host und dem IdP. Wenn die Abweichung 30 Sekunden überschreitet, konfigurieren Sie NTP auf beiden Systemen.
  3. Bestätigen Sie in der IdP-Admin-Konsole, dass das Benutzerkonto existiert, aktiv ist und die E-Mail-Adresse mit der E-Mail-Adresse des VaultPAM-Kontos übereinstimmt.
  4. Bestätigen Sie, dass die unter Organization → Security → SSO Settings angezeigte Callback URL als erlaubte Redirect-URI in der IdP-Anwendung aufgeführt ist.
  5. Wenn Sie Keycloak verwenden, öffnen Sie die Keycloak-Admin-Konsole und überprüfen Sie, dass der Client aktiviert ist, der Access Type confidential ist, die Valid Redirect URIs die Callback-URL enthalten und die erforderlichen Scopes zugeordnet sind.
  6. Löschen Sie nach jeder Änderung Ihre Browser-Cookies und versuchen Sie die SSO-Anmeldung erneut in einem privaten/Inkognito-Fenster, um zwischengespeicherte Sitzungszustände zu vermeiden.

Eskalationspfad

Wenn Sie alle fünf Ursachen durchgearbeitet haben und die SSO-Anmeldung weiterhin fehlschlägt:

  1. Erfassen Sie die vollständige URL, die im Adressfeld des Browsers zum Zeitpunkt des Fehlers angezeigt wird (sie enthält den Fehlercode und die Beschreibung als Query-Parameter).
  2. Sammeln Sie das Keycloak- oder IdP-Ereignisprotokoll für den fehlgeschlagenen Authentifizierungsversuch.
  3. Notieren Sie die genaue auf dem Bildschirm sichtbare Fehlermeldung.
  4. Eröffnen Sie ein Support-Ticket mit: Ihrem IdP-Typ und Ihrer IdP-Version, der Fehler-URL, dem Ausschnitt des Ereignisprotokolls und einer Bestätigung darüber, welche Schritte Sie bereits abgeschlossen haben.

Verwandte Artikel