Connexion simple par email via des liens profonds contenant un nom d'utilisateur

Je voudrais abaisser la barre de connexion sur le forum de notre école en suivant la procédure suivante :

  1. Les liens envoyés par e-mail vers le forum (principalement non public) doivent contenir le nom d’utilisateur de l’utilisateur concerné (par exemple, forum.my.tld/t/123#user=toka).

  2. Si un utilisateur non connecté ouvre ce lien, une page propose d’envoyer un lien de connexion en cliquant sur un bouton.

  3. S’il est cliqué, une connexion avec un jeton de connexion doit être envoyée à l’utilisateur, ce qui lui permettra d’ouvrir la page cible sans autre interaction pendant une période donnée. Sinon, un bouton « renvoyer le lien de connexion » doit être proposé.

Est-ce déjà implémenté quelque part ?

Sinon : quels mécanismes existent, qui pourraient être utilisés pour le mettre en œuvre ?

2 « J'aime »

Vous souhaitez utiliser DiscourseConnect afin que les utilisateurs connectés à votre système soient également connectés à Discourse.

Configurer DiscourseConnect - Authentification unique officielle pour Discourse (SSO)

Il n’y a pas d’autre système.
La plupart des utilisateurs utilisent le forum uniquement par e-mail.

1 « J'aime »

Nous prenons déjà en charge la connexion par e-mail :

L’automatisation/simplification de cela est donc certainement réalisable.

5 « J'aime »

Oui. C’est notre principal moyen de se connecter au forum. Mais pour une grande partie des utilisateurs, cela semble trop difficile.

De plus, nous sommes confrontés au problème que certains utilisateurs utilisent des adresses e-mail non identiques dans leur communication. Par exemple, (at)gmail.com et (at)googlemail.com, ou des adresses e-mail avec ou sans points ajoutés dans le nom d’utilisateur. Ils ne se souviennent pas de l’adresse e-mail qu’ils ont une fois écrite sur le formulaire d’inscription (oui, désolé, c’est l’Allemagne) et ignorent ces problèmes ou la possibilité de connaître leur « adresse e-mail de connexion » en vérifiant leurs en-têtes d’e-mail.

Par conséquent, j’étudie un moyen permettant aux liens envoyés aux utilisateurs de leur permettre de se connecter sans avoir à connaître la procédure de connexion de Discourse.

1 « J'aime »

Il y a certainement un risque de sécurité, si vous êtes prêt à l’accepter, une certaine automatisation qui génère les liens que nous générons lorsque vous essayez de vous connecter par e-mail, est certainement réalisable, tant qu’ils ont déjà des comptes.

1 « J'aime »

Hm. J’ai essayé de contourner cela dans ma proposition.
Je comprends que les liens qui connecteraient directement les utilisateurs sont dangereux.

Mais avec le mécanisme suggéré, le seul risque que je vois est que les utilisateurs reçoivent des liens de connexion non désirés.

1 « J'aime »

J’ai une première implémentation fonctionnelle :

Maintenant, j’essaie d’apprendre à décorer tous les liens de discourse dans les notifications avec des informations utilisateur.

2 « J'aime »

Cette fonctionnalité est maintenant implémentée dans

Où est le meilleur endroit pour demander des possibilités de ne pas avoir à remplacer les méthodes principales comme

et

pour rediriger vers une destination_url après la connexion

?

1 « J'aime »