URL direct pour la fonctionnalité « envoyer un lien de connexion par e-mail »

Il existe déjà une URL directe pour réinitialiser le mot de passe d’un utilisateur : /password-reset

Existe-t-il une URL similaire pour diriger directement un utilisateur vers la fonctionnalité « envoyez-moi un lien de connexion par e-mail » ?

4 « J'aime »

Je suppose que ce sujet peut répondre à vos questions, veuillez jeter un coup d’œil : Envoyez-moi un lien de connexion par e-mail

Ce sujet concerne l’intégration de Discourse avec un autre site web/application. Je pose des questions sur la liaison à une fonctionnalité de connexion disponible par défaut dans Discourse. Il n’y a pas d’authentification unique (SSO) impliquée.

Je pense que la route /login est ce que vous voulez. Vous devez entrer un nom d’utilisateur ou une adresse e-mail, donc il n’y a pas de moyen plus court pour le faire, à ma connaissance.

1 « J'aime »

La réponse de Jay n’est pas une « solution » pour moi, mais elle semble malheureusement être la bonne réponse à ma question, je l’ai donc marquée en conséquence.

2 « J'aime »

Qu’est-ce qui résoudrait le problème ? La possibilité d’inclure l’e-mail ou le nom d’utilisateur dans l’URL ?

1 « J'aime »

Pas tout à fait. J’aimerais pouvoir dire quelque chose comme ceci (ceci fait partie d’une transition d’une intégration SSO vers un Discourse classique) :

J’aimerais pouvoir lier vers deux endroits différents où la seule chose que l’utilisateur peut faire est de compléter l’option qu’il a choisie. Ceci est disponible pour réinitialiser votre mot de passe, mais pas pour demander un lien de connexion. Si je pouvais pré-remplir l’e-mail de l’utilisateur – encore mieux !

1 « J'aime »

En manipulant les messages d’approbation habituels, j’ai réalisé qu’il existait une URL directe pour le lien de connexion par e-mail :

/login-helper/send-login-mail?login=USER_EMAIL&destination_url=%2F

Cela semble fonctionner correctement, mais vous devez pré-remplir l’adresse e-mail et une destination.

Juste pour référence, vous pouvez également pré-remplir l’interface de réinitialisation du mot de passe :

/password-reset?email=USER_EMAIL

Je marquerai ceci comme la solution pour les futurs visiteurs !

Edit : J’ai retiré ceci en tant que réponse, en raison des problèmes soulignés dans les publications ultérieures.

1 « J'aime »

Ça ne fonctionne pas :thinking:

https://meta.discourse.org/login-helper/send-login-mail?login=myemail%40gmail.com&destination_url=%2F renvoie une 404 et aucun e-mail n’est reçu.

Qu’est-ce qui me manque ?

Je n’ai aucune idée pourquoi ça fonctionne sur mon système, mais pas ici sur Meta.

Un autre problème que j’ai réalisé est que l’accès à cette aide est sévèrement limité et vous demandera d’attendre seulement 1 à 2 essais. Nos membres sont des professeurs et du personnel d’institutions académiques, et ils se connecteront probablement depuis la même IP. Donc, à moins que cette limite ne puisse être modifiée, cela semble être une option impossible :frowning:

1 « J'aime »

C’est un problème, que vous utilisiez le lien ou non. Il existe une variable d’environnement que vous pouvez définir pour autoriser la création de plus de comptes à partir de la même adresse IP.

Je pense que c’est quelque chose de différent. Je n’ai pas été empêché de créer un compte. J’ai été empêché de demander plus de 2 ou 3 liens de connexion dans un court laps de temps. Je peux comprendre pourquoi Discourse penserait que c’est un problème, mais ce serait bien de pouvoir le contourner.

Hmm. Pas sûr des limites de débit par adresse IP pour les liens de connexion, mais si vous avez un tas de personnes derrière la même adresse NAT, alors vous devriez consulter Available settings for global rate limits and throttling.

3 « J'aime »

J’ai regardé le lien suggéré Jay, mais je ne suis pas tout à fait sûr du paramètre qui aurait un impact sur le comportement que j’ai rencontré ci-dessus.

Par ailleurs, j’ai découvert que je pouvais simplement faire : https://my-discourse-site.com/?login=USER_EMAIL pour déclencher un lien de connexion.

Cela fonctionne pour moi car l’ensemble du site est défini sur privé. Donc, cela ne se déclenche pas sur Meta, par exemple, où une connexion n’est pas requise pour simplement consulter le site.

3 « J'aime »

Peut-être que vous n’avez pas encore décrit ce problème, mais j’ai eu un client qui est allé à une conférence où tout le monde était sur le même WIFI avec la même adresse IP NAT, j’ai ajusté des paramètres comme celui-ci pour éviter qu’ils ne soient tous limités en débit :

C’est génial ! Je n’arrive pas à le faire fonctionner, même sur un site nécessitant une connexion que j’ai essayé, mais je vous fais confiance. :slight_smile:

1 « J'aime »

Hmmm, je me demande pourquoi cela pourrait être. Je ne vois aucun autre paramètre qui aurait un impact sur cela. Peut-être que j’ai activé DiscourseConnect (mais sans utiliser ses fonctionnalités SSO) ?

Votre problème d’IP empêche-t-il la création de comptes ou la connexion à des comptes existants ? Si c’est le premier cas, max new accounts per registration pourrait être ce que vous recherchez. Sinon, quel est le message d’erreur exact ? Ensuite, quelqu’un pourra rechercher dans le code source ce message d’erreur pour voir ce qui le déclenche.

1 « J'aime »

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.