Olá a todos,
Estamos construindo uma interface para um servidor Discourse auto-hospedado. O servidor está na versão mais recente até o momento. Nosso código é executado em um domínio diferente.
Nós configuramos tudo, recebemos a chamada SSO assinada do Discourse e respondemos com o que acreditamos ser uma resposta assinada adequada, de acordo com isto.
Olhando os logs do Discourse, nossa resposta parece estar devidamente assinada e os campos que retornamos são analisados corretamente. O nonce também é idêntico. Apesar de tudo isso, a transação sempre termina com um erro 419 “Nonce incorreto, foi gerado em uma sessão de navegador diferente ou expirou”.
O nonce está realmente correto; não pode ter expirado, pois respondemos imediatamente; e uma sessão de navegador diferente - bem, a resposta vem do navegador do usuário, então…?
Adicionamos “*” aos “domínios de redirecionamento permitidos”, tentamos adicionar nosso servidor de aplicativos à lista CORS (e definimos a variável de ambiente apropriada). Nenhuma mudança.
Devemos estar fazendo algo errado… Agradeceria qualquer ajuda para nos tirar deste beco sem saída ![]()