SSOコールバックで接続が切断されました(サーバーから0バイト送信されました)。以前はなりすましでログアウトしていました

(追記:こちらでも報告されています: Connection lost during callback · Issue #28 · soudis/discoursesso · GitHub)

こんにちは。

Discourse SSOで非常に奇妙な問題が発生しています。あるユーザーがなりすましからログアウトして以来、再度ログインできなくなっています。そのユーザーがログインしようとすると、現在次のような状況になります(そのユーザーは以前Nextcloudにログインしていました)。

サーバーは接続を閉じます。Nginxプロキシ、Discourse、Nextcloudのいずれにもエラーログが見つかりません。

興味深いことに、これはネットワークやデバイスとは関係ありません。ログインに失敗するのは、このユーザーだけです。

DiscourseからSSOデータをクリアし、メールアドレスを変更して新しいDiscourseアカウントの作成を強制しようとしました。しかし、問題は依然として残っています。

Nextcloudプラグインの問題だと疑っていますが、Discourseからのエラーメッセージが見られないのが不思議です。(ログをクリアして再度試しましたが、記録は表示されませんでした。)

Admin - Settings - Login - verbose_discourse_connect_logging を有効にしましたか?

「いいね!」 1

ちょうど行いました。記録は次のとおりです。

詳細なSSOログ:SSOプロセスを開始しました

add_groups:
admin:
moderator:
avatar_force_update:
avatar_url:
bio:
card_background_url:
confirmed_2fa:
email:
external_id:
groups:
locale:
locale_force_update:
location:
logout:
name:
no_2fa_methods:
nonce: <削除済み>
profile_background_url:
remove_groups:
require_2fa:
require_activation:
return_sso_url: https://hub.diehumanisten.de/session/sso_login
suppress_welcome_message:
title:
username:
website:

この問題はまだ続いていますか @simon.michalke

はい、再度テストしましたが、まだ問題は解決していません。

「いいね!」 1

さて、今度は本当に問題が発生しました。この問題は他のユーザーにも広がりつつあるようです。2番目のユーザーは管理者ではないため、回避策を使用できません。

(有料)サポートに連絡したい場合、この件については誰に相談すればよいでしょうか?

最終的に、この回答はあなたの問題の解決に役立ちましたか? :crossed_fingers:

はい。Nextcloud SSOはGETのみをサポートし、POSTベースのログインはサポートしていません。リクエストヘッダーにグループが多すぎたため、nginxプロキシがリクエストをサイレントにドロップしました。

現在の回避策は、グループを含まないようにプラグインをマニュアルでパッチすることです。

まもなく認証にKeycloakに切り替える予定です。

「いいね!」 2

このトピックは、最後の返信から30日後に自動的にクローズされました。新しい返信は許可されていません。