Authentifizierungsfehler! csrf_detected: OmniAuth::Strategies::OAuth2::CallbackError Fehler aufgrund fehlender session["omniauth.state"]

Hallo,

wir versuchen, Discourse-Foren im Produktionsmodus bereitzustellen. Wir nutzen unseren eigenen OAuth-Anbieter und verwenden daher das Plugin discourse-oauth2-basic, um dies zu ermöglichen.

Beim Anmelden mit unserem benutzerdefinierten OAuth-Anbieter erhalten wir folgende Fehlermeldung:

„Authentication failure! csrf_detected: OmniAuth::Strategies::OAuth2::CallbackError, csrf_detected | CSRF detected"

Nach einiger Fehlersuche wurde festgestellt, dass der Wert „omniauth.state

Beginnt und endet die Authentifizierung im selben Browser? Haben Sie den Standardwert für die Einstellung ‘Same-Site-Cookies’ geändert?

2 „Gefällt mir“

Ja @david, die Authentifizierung beginnt und endet im selben Browser. Der Wert von same_site_cookies wurde nicht geändert. Er ist standardmäßig auf “Lax” gesetzt.

Folgen Sie unserem standardmäßigen Installationshandbuch?

Leider ist es für uns sehr schwierig, hier ohne Einblick in die Website zu helfen. Können Sie uns einen Link dazu schicken?

2 „Gefällt mir“

Hallo @david, wir betreiben Discourse mit Docker-Containern. Die verwendete Docker-Datei befindet sich unter discourse_docker/image/base at master · discourse/discourse_docker · GitHub. Da es kein Skript zum Starten von Discourse im Docker-Container gibt, haben wir ein kleines Startskript hinzugefügt, das Discourse vorab kompiliert und startet.
RAILS_ENV=production bundle exec rake db:migrate
RAILS_ENV=production bundle exec rake assets:precompile
RAILS_ENV=production bundle exec rails server --binding=0.0.0.0

Leider ist es für uns sehr schwierig, hier Community-Support für benutzerdefinierte Installationen anzubieten. Bitte versuchen Sie, Discourse mithilfe des offiziellen Leitfadens einzurichten. Falls dies nicht möglich ist, könnte Ihnen jemand im Marketplace gegen eine Gebühr helfen.

2 „Gefällt mir“