OAuth2 SSO mit SSO-Provider setzt das Redirect nicht?

Ich denke, dies könnte ein ähnlicher Vorfall dieses Problems von vor ein paar Jahren sein: Discourse doesn't redirect to return_sso_url after user logs in on private site - #8 by vinothkannans

Ich habe eine Rails-Anwendung, die omniauth-discourse als Anmeldeverfahren verwendet, was gut funktioniert.
Meine Discourse-Instanz nutzt dann SSO für eine weitere App, die ich betreue.
Auf diese Weise fungiert Discourse als mein SSO-Anbieter, nutzt aber gleichzeitig SSO mit einer anderen App.

Wenn ein Benutzer bereits bei Discourse angemeldet ist, funktioniert die Weiterleitung zurück zur ursprünglichen App einwandfrei.
Wenn ein Benutzer jedoch noch nicht angemeldet ist, wird er zum SSO-Flow geleitet, aber die Rückgabe-URL ist immer auf return_sso_url=https://forum.snap.berkeley.edu/session/sso_login gesetzt. Sollte dies nicht die ursprüngliche Anfrage-URL sein?

  • Der Benutzer klickt auf die Anmeldeschaltfläche in der ersten App, was ihn zu einer URL weiterleitet, die letztlich so aussieht: https://forum.snap.berkeley.edu/session/sso_provider?sso=nonce=4...f&return_sso_url=https://www.snapcon.org/accounts/auth/discourse/callback &sig=1...6 (Ich habe sie zur besseren Lesbarkeit entschlüsselt)
  • Discourse leitet dann zum Discourse-Endpunkt der zweiten App weiter: https://snap.berkeley.edu/api/v1/discourse-sso?sig=f...d&sso=nonce=6...1&return_sso_url=https://forum.snap.berkeley.edu/session/sso_login
  • Der Benutzer meldet sich an, wird aber nur zur Forum-Startseite weitergeleitet.

Gibt es eine Workaround-Lösung, oder könnte dies in einem Update behoben werden?

Mir ist bewusst, dass ich Discourse hier nur als Proxy verwende, aber derzeit ist es das beste Tool, das ich zur Integration dieser beiden Anwendungen habe.

Vielen Dank!