Temos um pequeno problema onde pressionar o botão de logout não resulta no usuário sendo deslogado.
Nossa configuração
Temos um frontend em Vue.js, onde você pode se autenticar com o Auth0. Após fazer login, você pode pressionar o botão do quadro de mensagens e será redirecionado para nosso fórum Discourse, onde, mais uma vez, será autenticado com o Auth0.
Quando você pressiona logout no fórum Discourse, aparece brevemente um modal com um botão de atualizar, mas em seguida a página é automaticamente atualizada e o fórum é carregado sem que o usuário tenha sido deslogado.
Aqui está uma captura de tela das chamadas do navegador. Não tenho certeza sobre as chamadas de erro em vermelho, pois parecem ser acionadas após as chamadas de erro em vermelho novamente e, em seguida, parecem ter sucesso.
Hmmm, o problema é que os usuários são desconectados, mas logo em seguida são automaticamente reconectados. Uma solução é definir a configuração de redirecionamento ao sair para um site externo, para que as pessoas não sejam reconectadas imediatamente. Ou talvez você possa até definir para /login
Vou refletir sobre isso nos próximos dias e ver se conseguimos chegar a uma solução melhor. É confuso ter um botão de sair que não faz… nada.
Single sign-on / uma única estratégia de autenticação com logins locais desativados
“login required” ativado
Talvez possamos adicionar um aviso no painel quando ambas as condições forem atendidas, informando ao usuário para configurar corretamente o redirecionamento de logout em outro lugar? É uma configuração relativamente incomum, na qual o administrador pode gastar apenas 5 segundos extras configurando o endereço de logout.
@david Redirecionar para a página de login é uma boa solução, obrigado! Concordo com @Falco de que você pode precisar de um aviso para configurar isso, caso contrário, isso causa comportamentos estranhos!
Como o @Falco disse, isso é bastante raro, mas acho que vou configurar o redirecionamento padrão de logout para /login em sites com login_required — simples e direto, e assim não dependemos de que as pessoas realmente leiam um aviso.