OAuth2 SSO가 SSO 제공자와 함께 리디렉트를 설정하지 않나요?

몇 년 전 이 이슈와 비슷한 사례가 있었던 것 같습니다: Discourse doesn't redirect to return_sso_url after user logs in on private site - #8 by vinothkannans

omniauth-discourse를 로그인 방법으로 사용하는 Rails 앱을 운영하고 있으며, 잘 작동하고 있습니다.
그런데 제 Discourse 인스턴스가 제가 관리하는 다른 앱으로 SSO를 사용하고 있습니다.
이 경우 Discourse는 SSO 제공자(Provider) 역할을 하지만, 동시에 다른 앱과도 SSO를 사용하고 있는 셈입니다.

사용자가 이미 Discourse에 로그인된 상태라면 원래 앱으로의 리다이렉트가 정상적으로 작동합니다.
하지만 사용자가 아직 로그인되지 않은 상태라면 SSO 플로우로 이동하게 되는데, 리턴 URL이 항상 return_sso_url=https://forum.snap.berkeley.edu/session/sso_login으로 설정됩니다. 원래 요청 URL이어야 하지 않나요?

  • 사용자가 첫 번째 앱에서 로그인 버튼을 클릭하면, 최종적으로 다음과 같은 URL로 리다이렉트됩니다: 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 (가독성을 위해 디코딩했습니다)
  • 그다음 Discourse가 두 번째 앱의 Discourse 엔드포인트로 리다이렉트합니다: 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
  • 사용자가 로그인하지만, 포럼 홈페이지로만 이동합니다.

우회 방법이 있는지, 아니면 업데이트를 통해 해결될 수 있는 문제인가요?

Discourse를 단순히 프록시처럼 사용하고 있다는 점은 인지하고 있습니다. 하지만 현재 이 두 애플리케이션을 통합하는 데는 이게 가장 좋은 도구입니다.

감사합니다!