Login simples por email através de links profundos contendo um nome de usuário

Gostaria de diminuir a dificuldade de login no fórum da nossa escola através do seguinte procedimento:

  1. Links enviados por e-mail para o fórum (na maioria não público) devem conter o nome de usuário do usuário a quem se destina (como forum.my.tld/t/123#user=toka)

  2. Se um usuário não logado abrir este link, uma página oferecerá o envio de um link de login clicando em um botão.

  3. Se clicado, um login com um token de login deve ser enviado ao usuário, o que permitirá que ele abra a página de destino sem interação adicional por um tempo específico. Caso contrário, um botão “reenviar link de login” deve ser oferecido.

Isso já foi implementado em algum lugar?

Se não: que mecanismos existem que poderiam ser usados para implementá-lo?

2 curtidas

Você deseja usar o DiscourseConnect de forma que os usuários logados em seu sistema também sejam logados no Discourse.

Configurar DiscourseConnect - Single-Sign-On Oficial para Discourse (sso)

Não existe outro sistema.
A maioria dos usuários utiliza o fórum apenas por e-mail.

1 curtida

Já oferecemos suporte ao login por e-mail:

Portanto, automatizar/simplificar isso é certamente viável.

5 curtidas

Sim. Esta é a nossa forma proeminente de fazer login no fórum. Mas para uma grande parte dos usuários, isso parece ser muito difícil.

Além disso, enfrentamos o problema de que alguns usuários usam endereços de e-mail não idênticos em sua comunicação. Por exemplo, (at)gmail.com e (at)googlemail.com, ou endereços de e-mail com ou sem pontos adicionados no nome de usuário. Eles não se lembram de qual endereço de e-mail escreveram no formulário de registro em papel (sim, desculpe, é a Alemanha) e não estão cientes desses problemas ou da possibilidade de saberem seu “endereço de e-mail de login” verificando os cabeçalhos de seus e-mails.

Portanto, estou investigando uma maneira de links enviados aos usuários permitirem que eles façam login sem mais conhecimento sobre como usar o procedimento de login do Discourse.

1 curtida

Certamente há um risco de segurança, se você estiver confortável em aceitá-lo, alguma automação que gere os links que geramos quando você tenta fazer login por e-mail, é certamente viável, desde que eles já tenham contas.

1 curtida

Hm. Eu tentei contornar isso na minha proposta.
Entendo que links que fariam login de usuários diretamente são perigosos.

Mas com o mecanismo sugerido, o único risco que vejo é os usuários receberem links de login indesejados.

1 curtida

Tenho uma primeira implementação funcional:

Agora estou tentando aprender como decorar todos os links do discourse em notificações com informações do usuário.

2 curtidas

Esta funcionalidade agora está implementada em

Onde é o lugar certo para perguntar sobre possibilidades de não ter que sobrescrever métodos principais como

e

para redirecionar para um destination_url após o login

?

1 curtida