OIDC-Plugin plötzlich defekt, schlägt lautlos für neue Benutzer fehl

Wir haben eine Discourse-Instanz am Laufen, die keine Benutzer mehr anmeldet, die noch kein Konto haben, und wir sind ratlos, warum! Dies begann vor ein paar Wochen, nachdem wir das Discourse AI-Plugin installiert und die Instanz neu gestartet hatten. Dies wurde mir erst in den letzten Tagen nach Kundenbeschwerden mitgeteilt. Normalerweise haben wir täglich genügend Anmeldungen.

Die Einrichtung

  • Selbst gehostetes Discourse über offizielles Docker
  • https://community.enginedj.com
  • OIDC-Plugin mit unserem eigenen OIDC-Provider (:camera_flash: 1)
  • Keine andere Authentifizierung außer OIDC (d. h. keine Registrierung per E-Mail + Passwort) (:camera_flash: 2)
  • Die letzte erfolgreiche Neuanmeldung war am 22. November 2023, 5:23 Uhr NZDT
  • Das KI-Plugin wurde am 22. November 2023, ca. 6:03 Uhr NZDT installiert (dies hätte einen Neustart der Discourse-Instanz verursacht)
  • Keine Ereignisprotokolle für Änderungen der Systemkonfiguration seit Oktober und nichts Relevantes zur Authentifizierung seit März (:camera_flash: 3)
  • Viel Aktivität im Forum, keine Probleme mit Speicherplatz / Datenbank usw.

Das Problem

  • Der Anmeldevorgang funktioniert korrekt, aber nach der Rückkehr werden Benutzer ohne bestehendes Konto nicht angemeldet.
  • Es wird keine Fehlermeldung angezeigt.
  • Es gibt keine Fehlermeldung in den Protokollen (wir haben einige CSRF-Fehler in den Protokollen, aber diese korrelieren nicht mit den fehlgeschlagenen Anmeldungen).
  • Ausführliche Protokollierung für das OIDC-Plugin zeigt, dass es korrekt Daten vom OIDC-Provider abfragt, Claims usw. erhält und keine Probleme anzeigt (:camera_flash: 4).

Was wir versucht haben

  • Discourse AI-Plugin deaktiviert
  • Discourse AI-Plugin entfernt
  • Cookie-Antworten auf übereinstimmende Domains überprüft
  • Alle Plugins / Komponenten auf die neueste Version aktualisiert (:camera_flash: 5)
  • Bestätigt, dass keine Einstellungen geändert wurden
  • Protokolle auf dem Host untersucht. Nichts Auffälliges.

Hier ist ein Video des Problems. Die erste Anmeldung ist für einen Benutzer ohne bestehendes Discourse-Konto. Die zweite ist mit meinem Admin-Benutzer.

https://www.loom.com/share/3aad210d844849dc8154ce6e5db50d29

Irgendwelche Ideen, was wir als nächstes untersuchen sollten?

:camera_flash: 1

:camera_flash: 2

:camera_flash: 3

:camera_flash: 4

:camera_flash: 5

1 „Gefällt mir“

Hallo @snikch :wave:

Wenn ich den Anmeldevorgang auf Ihrer Website durchlaufe, sehe ich diesen Fehler in der JavaScript-Konsole. Er stammt von Theme-ID=12, das anscheinend versucht (und fehlschlägt), eine Art zusätzliches Styling für die Anmeldeschaltfläche hinzuzufügen?

Wenn ich die Entwicklertools meines Browsers verwende, um das JavaScript für dieses bestimmte Theme zu ‘blockieren’, scheint alles wie erwartet zu funktionieren.

Ich denke also, um die Dinge wieder zum Laufen zu bringen, können Sie entweder Theme-ID=12 deaktivieren oder es bearbeiten, um den problematischen Code zu korrigieren/entfernen.

Dennoch möchten wir nicht, dass eine solche Theme-Fehlermeldung die Anmeldung für Websites komplett unterbricht! Ich werde also prüfen, ob wir hier die Fehlerbehandlung verbessern können :eyes: (Edit: PR zur Verbesserung hier)

5 „Gefällt mir“

Wow, danke @david. Ich hatte diesen Fehler gesehen und eine Karte dafür erstellt, um ihn zu beheben, aber ich ging einfach davon aus, dass dies überhaupt nichts mit der Benutzeranmeldung zu tun hätte, da ich davon ausging, dass dies alles serverseitig geschah und bevor das JS die Seite rendert! Viele Annahmen dort :facepalm: Ich sehe jetzt, dass es benötigt wird, um das Create Account-Modal anzuzeigen.

Vielen Dank für die Hilfe :heart_eyes_cat:

1 „Gefällt mir“

Dieses Thema wurde nach 21 Stunden automatisch geschlossen. Neue Antworten sind nicht mehr möglich.