Fire SSO Login para o Discourse ao fazer login no site externo

Estamos usando o Discourse com SSO e funciona muito bem.

No entanto, estou enfrentando uma situação estranha.

  • Estamos utilizando links de mensagens privadas do Discourse em nosso site externo (paddling.com) para criar uma nova mensagem privada no Discourse (forums.paddling.com).
  • Se o usuário estiver logado nos fóruns, funciona exatamente como esperado.
  • Se o usuário fizer login no paddling.com (mas não tiver acessado os fóruns antes), ao clicar no link para criar uma nova mensagem, ele simplesmente abre os fóruns (sem criar a nova mensagem).
  • Se o usuário clicar no link da mensagem uma segunda vez, a mensagem funciona.

Parece que o problema é que, embora o usuário esteja logado no paddling.com, ele não está logado nos fóruns até acessar uma página em forums.paddling.com.

Aqui está um exemplo de anúncio classificado para que você possa ver o processo:
https://paddling.com/classifieds/trak-2-0-for-sale-747840/

Existe alguma maneira de acionar o login SSO (para forums.paddling.com) ao fazer login no site externo (paddling.com)?

Encontrei uma referência que poderia funcionar:

Talvez você possa usar a abordagem descrita aqui: Creating pre-filled personal message links. Eu não testei usá-la com o return_path definido para compor uma MP pré-preenchida, mas acredito que seria possível fazer funcionar.

A mensagem pessoal pré-preenchida funciona bem (desde que o usuário esteja logado). Vou pedir ao nosso desenvolvedor para verificar o uso do return_path.

Acabei de reler minha resposta anterior. O que eu quis dizer foi que a abordagem descrita neste tópico deve funcionar: Criar um link de login SSO. É assim que nosso plugin do WordPress cria links que fazem o login automático dos usuários no Discourse. O que ainda não testei é usar essa abordagem com uma URL de mensagem pré-preenchida definida para o return_path.

Me avise se ainda não ficou claro.

@simon muito obrigado pela esclarecimento. Isso faz mais sentido agora. Vou testar e atualizar aqui.

Atualização rápida @simon - funcionou perfeitamente.

https://forum.example.com/session/sso?return_path=https://forum.example.com/new-message?username=username%26title=title%26body=body+message

Obrigado pela sua ajuda.