Olá. Todo o “loop de SSO” (enviar o usuário para o nosso site → autenticar → enviar de volta para o Fórum com payload assinado) parece estar configurado corretamente, pois o primeiro usuário foi adicionado adequadamente (posso ver o usuário no painel de administração com os detalhes de Single Sign On do DiscourseConnect). No entanto, após o usuário sair do fórum e tentar fazer login novamente, ele vê a página “Erro de Login”. O log do arquivo de log diz “Completed 422 Unprocessable Entity”. Verifiquei sso e sig → tudo está correto. Como ou onde posso encontrar a razão para esse erro?
Pode valer a pena criar um usuário de teste e ver se você consegue reproduzir o erro com essa conta. Tente passar pelo processo de login com o inspetor do seu navegador aberto na aba Network. Isso pode lhe dar alguns detalhes sobre o que está acionando o erro 422.
Se você ainda não o fez, ative a configuração verbose discourse connect logging no Discourse. Essa configuração adiciona algumas entradas de log adicionais aos logs do Discourse.
Se você está vendo isso nos logs do Discourse, há algum detalhe adicional sobre a solicitação mostrado quando você clica na entrada do log?
Há algumas informações sobre a depuração de problemas comuns do DiscourseConnect aqui: Debug and fixing common DiscourseConnect issues. Não tenho certeza se é relevante para o seu caso, no entanto.
Ei Simon, muito obrigado pelo conselho de ativar o log detalhado do Discourse Connect! No log, consegui encontrar o problema imediatamente. Meu erro foi codificar o sso em hash depois que ele foi codificado em URL. Para que a assinatura funcione, o sso deve ser codificado em hash depois de ter sido codificado em base64, mas antes de ser codificado em URL. Muito obrigado por me ajudar!
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.