OAuth2 SSO con provider SSO non imposta il redirect?

Credo che questo possa essere un caso simile a un problema verificatosi qualche anno fa: Discourse doesn't redirect to return_sso_url after user logs in on private site - #8 by vinothkannans

Ho un’app Rails che utilizza omniauth-discourse come metodo di accesso, il quale funziona bene.
La mia istanza di Discourse utilizza poi SSO per un’altra app che mantengo.
In questo modo, Discourse funge da provider SSO, ma utilizza anche SSO con un’altra applicazione.

Quando un utente è già loggato su Discourse, il reindirizzamento verso l’app originale funziona perfettamente.
Quando un utente non è già loggato, viene indirizzato al flusso SSO, ma l’URL di ritorno è sempre impostato come return_sso_url=https://forum.snap.berkeley.edu/session/sso_login. Sembra che questo dovrebbe essere l’URL della richiesta originale, no?

  • L’utente clicca sul pulsante di accesso nella prima app, che lo reindirizza a un URL che alla fine assomiglia a questo: 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 (l’ho decodificato per chiarezza)
  • Discourse reindirizza quindi all’endpoint Discourse della seconda app: 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
  • L’utente effettua l’accesso, ma viene portato solo alla home page del forum.

Esiste una soluzione alternativa o si tratta di qualcosa che potrebbe essere risolto in un aggiornamento?

Riconosco di usare Discourse solo come proxy, ma al momento è lo strumento migliore che ho per integrare queste due applicazioni.

Grazie!