Nous avons une instance Discourse en cours d’exécution qui a cessé de connecter les utilisateurs qui n’ont pas encore de compte et nous ne comprenons pas pourquoi ! Cela a commencé il y a quelques semaines après l’installation du plugin Discourse AI et le redémarrage de l’instance. Cela n’a été porté à mon attention qu’après des plaintes de clients ces derniers jours. Nous avons habituellement beaucoup de nouvelles inscriptions chaque jour.
La configuration
- Instance Discourse auto-hébergée via le docker officiel
- https://community.enginedj.com
- Plugin OIDC utilisant notre propre fournisseur OIDC (
1) - Aucune autre authentification que l’OIDC (c’est-à-dire pas d’inscription par e-mail + mot de passe) (
2) - Dernière inscription réussie le 22 novembre 2023 à 5h23 NZDT
- Le plugin AI a été installé vers le 22 novembre 2023 à 6h03 NZDT (cela aurait causé le redémarrage de l’instance Discourse)
- Aucun journal d’événements de modifications de configuration système depuis octobre, et rien de pertinent pour l’authentification depuis mars (
3) - Beaucoup d’activité sur le forum, aucun problème d’espace disque / base de données, etc.
Le problème
- Le flux de connexion fonctionne correctement mais après le retour, les utilisateurs sans compte préexistant ne sont pas connectés
- Aucun message d’erreur ne s’affiche
- Aucun message d’erreur dans les journaux (nous avons quelques erreurs CSRF dans les journaux mais elles ne sont pas corrélées avec les échecs de connexion)
- La journalisation détaillée du plugin OIDC montre qu’il interroge correctement les données du fournisseur OIDC, obtient les revendications, etc. et ne montre aucun problème (
4)
Ce que nous avons essayé
- Désactivation du plugin Discourse AI
- Suppression du plugin Discourse AI
- Vérification des réponses des cookies pour les domaines incompatibles
- Mise à jour de tous les plugins / composants vers la dernière version (
5) - Confirmation qu’aucun paramètre n’a été modifié
- Investigation des journaux sur l’hôte. Rien ne ressort.
Voici une vidéo du problème. La première connexion est pour un utilisateur sans compte Discourse existant. La seconde est avec mon utilisateur administrateur.
https://www.loom.com/share/3aad210d844849dc8154ce6e5db50d29
Des idées sur ce que nous devrions examiner ensuite ?
1
2
3
4
5






