Kann man die SSO-Anbieter wechseln?

Wir sind vor etwa zwei Jahren mit Discourse live gegangen und verwenden SSO aus unserem Haupt-Backoffice-System als Authentifizierungsanbieter. Es verwendet eine externe ID (GUID).

Wir bereiten uns darauf vor, unser Haupt-Backoffice-System auf einen anderen Anbieter umzustellen. Dieser unterstützt OAuth2/OpenID, aber wenn wir auf dieses neue System umstellen, werden sich die externen IDs (GUIDs) unserer Benutzer ändern. Ich frage mich also, ob andere diesen Weg schon gegangen sind und ob ich die externen IDs, die derzeit in unserem Discourse gespeichert sind, irgendwie massenhaft aktualisieren muss.

1 „Gefällt mir“

Sie sollten in Ordnung sein, solange die E-Mail-Adresse eines Benutzers gleich bleibt.

5 „Gefällt mir“

Danke, leider erhalte ich die Fehlermeldung „Die primäre E-Mail-Adresse ist bereits vergeben“, wenn ich meinen neuen SSO-Anbieter teste.

Und ich habe diese Einstellung vorgenommen:
image

Das liegt daran, dass Sie versuchen, sich zu registrieren, obwohl Sie sich anmelden sollten (da das Konto bereits existiert).

Aber ich versuche mich nicht anzumelden. Ich komme auf die Homepage und klicke dann auf „Anmelden“; ich gelange zur Anmeldeseite meines SSO-Anbieters, bei der ich mich erfolgreich authentifizieren kann, aber nachdem ich mein Passwort eingegeben habe, lande ich auf der Seite „Erstellen wir Ihr Konto“, obwohl ich nie auf „Registrieren“ geklickt habe.

Ich habe auch diese Einstellungen vorgenommen, die meiner Meinung nach angemessen sein sollten.

Zur Fehlerbehebung würde ich mit nur den erforderlichen Einstellungen beginnen. Bitte bestätigen Sie, dass auf beiden Seiten ein Benutzer mit dieser E-Mail-Adresse existiert.

Haben Sie diese E-Mail manuell in Discourse eingegeben oder wurde sie automatisch vom SSO-Server übernommen?

Ich glaube, was hier vielleicht passiert, ist, dass die E-Mail mit einem anderen Benutzernamen in Discourse verknüpft ist und Ihr SSO-Server einen neuen Benutzernamen sendet, was diesen Konflikt verursacht.

Haben Sie in den Discourse-Protokollen etwas im Zusammenhang mit SSO? Dies könnte hilfreich sein, um die genaue Ursache dieses Problems zu ermitteln.

1 „Gefällt mir“

Danke. Ich habe bestätigt, dass ich SSO/OpenID in Discourse deaktivieren und mich mit derselben E-Mail-Adresse bei Discourse anmelden kann. Ich habe bestätigt, dass dieselben Anmeldedaten bei meinem SSO-Anbieter funktionieren.

Wenn ich OpenID in Discourse wieder aktiviere, authentifiziere ich mich erfolgreich über meinen SSO-Anbieter, lande aber immer noch auf dem Discourse-Bildschirm, auf dem ein Konto erstellt werden soll. Alle drei Werte auf diesem Bildschirm (E-Mail, Benutzername und vollständiger Name) werden automatisch vom SSO-Anbieter ausgefüllt.

Und ich habe versucht, alle oben genannten Einstellungen zu deaktivieren, aber dieses Verhalten hat sich nicht geändert.

1 „Gefällt mir“

Könnten Sie bitte zu discourse.example.com/logs gehen und prüfen, ob es Warnungen oder Fehler im Zusammenhang mit SSO gibt?

1 „Gefällt mir“

Danke, ja, keine SSO-Fehler und keine OIDC-Fehler. Und ich habe auch die ausführliche Protokollierung für OpenID aktiviert.

1 „Gefällt mir“

Entschuldigung, ich habe im Moment keine Vorschläge. Ich werde antworten, wenn ich etwas finde.