Pour une raison que j’ignore, Discourse ne permet pas aux utilisateurs de se connecter ou de gérer des comptes externes déjà connectés (par exemple, un compte Discord associé). Le code de Discourse semble utiliser la logique suivante pour déterminer si un utilisateur peut mettre à jour ses comptes associés :
secondFactorEnabled,
canCheckEmails,
isAnonymous
) {
if (secondFactorEnabled || !canCheckEmails || isAnonymous) {
return false;
}
return findAll().length > 0;
Pourquoi secondFactorEnabled est-il une variable prise en compte ici ?
Mes utilisateurs sont très confus car ils se retrouvent dans une situation bizarre. Ils ont créé un compte sur notre site web, ont associé leur compte à un compte Discord afin d’accéder à notre serveur Discord, puis ont activé l’authentification à deux facteurs sur leur compte. Après cela, toute la section « Comptes associés » a disparu de leur page de compte ! Ils ne peuvent plus voir ni gérer leur compte associé tant que le 2Factor est activé.
Nous avons un autre utilisateur qui était très confus car il a créé son compte et activé le 2Factor, et n’a pas pu suivre nos instructions pour ajouter un compte associé car toute la section « Comptes associés » n’est jamais apparue pour lui en premier lieu.
La seule chose que ces deux utilisateurs ont en commun par rapport aux autres utilisateurs sans problème est qu’ils ont tous deux le 2Factor activé.
J’aimerais offrir à mes utilisateurs la possibilité d’avoir à la fois le 2Factor activé sur leur compte de forum ET de pouvoir associer leur compte à un compte Discord.
Je classe ceci dans la catégorie Support, mais je ne suis pas sûr s’il s’agit réellement d’un Bug. Quoi qu’il en soit, il semble qu’il n’y ait pas de solution de contournement sans modifications du code de Discourse.