Conectamos o discourse ao nosso aplicativo com sso.
Login bem-sucedido e redirecionamento para o discourse
Clicar em algum quadro
Popup “você foi desconectado”
Nossos palpites são os seguintes
O valor do _forum_session no armazenamento da sessão continua mudando quando clicamos no quadro
Portanto, a chave de sessão anterior e a nova chave de sessão gerada não correspondem às vezes.
Como gerenciar o valor do forum_session? Ou como controlar a sequência de geração do _forum_session?
versão: 3.5.0.beta1
tipo de implantação: auto-hospedado
tipo de login: Discourse SSO Connect
Olá a todos,
Atualmente, estou executando uma instância Discourse auto-hospedada em nossa infraestrutura.
Tudo funciona bem até o ponto de login via método Discourse SSO Connect (usamos nosso próprio servidor de contas personalizado para autenticação).
No entanto, estamos enfrentando um problema em que, durante uma operação de pesquisa, um pop-up “Você foi desconectado” aparece aleatoriamente.
Isso só acontece no ambiente de produção — não em desenvolvimento ou staging.
Não modificamos nenhum código-fonte aberto do Discourse.
Nossa suposição é que o cookie _forum_session deveria ser atualizado a cada chamada de API, mas por algum motivo, essa atualização falha em produção. Como resultado, o cookie de sessão atual se torna inválido e leva ao logout.
Se alguém já passou por um problema semelhante ou tem insights sobre o que está acontecendo, agradeceria muito sua ajuda.
Gostaria de entender em quais casos a atualização do forum_session pode falhar. Pelo que pude verificar, ele é atualizado toda vez que entro em uma página através do cabeçalho Set-Cookie na resposta. Não alteramos nenhuma lógica relacionada, então não tenho certeza por que ocasionalmente ele não é atualizado.
Não há necessidade de abrir um novo tópico se já existe um (presumo que seja até sobre o mesmo site).
Você não atualiza há mais de 4,5 meses - por favor, comece atualizando seu site para a versão mais recente com testes aprovados (3.5.0.beta8-dev) e veja se isso resolve o problema.
É um pouco estranho — estamos executando três ambientes com a mesma versão (3.5.0.beta1), mas este problema ocorre apenas no ambiente de produção. Os outros dois ambientes (desenvolvimento e staging) estão funcionando bem, então não acho que seja um problema relacionado à versão.
Estou me perguntando, esta é a primeira vez que este problema é relatado? Houve algum relato semelhante no passado?
E para descartar isso, você deve atualizar primeiro.
Além disso, o beta1 contém várias vulnerabilidades de segurança, então você vai querer fazer isso de qualquer maneira