時々「ログアウトされました」というメッセージが表示される

ユーザーをログイン状態に保つことに問題があります。

  1. SSOを使用してDiscourseをアプリに接続しています。
  2. ログイン成功し、Discourseにリダイレクトされます
  3. いくつかのボードをクリックすると
  4. 「ログアウトしました」というポップアップが表示されます

私たちの推測は以下の通りです
ボードをクリックすると、セッションストレージの _forum_session の値が変わり続けます
そのため、以前のセッションキーと新しく生成されたセッションキーが一致しないことがあります。

_forum_session の値をどのように管理すればよいですか? または、_forum_session の生成シーケンスをどのように制御できますか?

このポップアップは何が原因で表示されるのでしょうか?

この問題を解決するために何を提供すればいいか分かりません。遠慮なく聞いてください。

すみません、サポートの件で、ついでにお伺いしたいのですが、サイトはどのようにデプロイされていますか?

ご協力ありがとうございます。
サイトは以下の通りです。

バージョン: 3.5.0.beta1
デプロイメントタイプ: セルフホスト
ログインタイプ: Discourse SSO Connect

皆さん、こんにちは。

現在、自社インフラ内でセルフホスト型の Discourse インスタンスを実行しています。

Discourse SSO Connect メソッド(カスタムアカウントサーバーで認証を使用)を介したログインの時点まではすべて正常に機能しています。

しかし、検索操作中に「ログアウトしました」というポップアップがランダムに表示される問題に遭遇しています。

これは 本番環境 のみで発生し、開発環境やステージング環境では発生しません。

Discourse のオープンソースコードは一切変更していません。

API コールごとに _forum_session クッキーが更新されるはずですが、何らかの理由で本番環境ではこの更新が失敗していると推測しています。その結果、現在のセッションクッキーが無効になり、ログアウトにつながります。

同様の問題を経験したことがある方や、何が起こっているのかについての洞察をお持ちの方がいらっしゃいましたら、ぜひご協力いただけると幸いです。

できるだけ早く解決したいと考えています。

よろしくお願いします!

これは、Sometimes toast the message "you were logged out" に関連している可能性がありますか?

はい、共有ありがとうございます。

フォーラムセッションの更新が失敗する可能性のあるケースを理解したいと思います。私の知る限り、ページに入るたびにレスポンスのSet-Cookieヘッダー経由で更新されます。関連するロジックは変更していないので、時折更新されない理由がわかりません。

「いいね!」 1

既にトピックが存在する場合は、新しいトピックを開く必要はありません(同じサイトに関するものだと推測します)。
4.5ヶ月以上更新していません - まずサイトを最新のtests-passed(3.5.0.beta8-dev)に更新して、問題が解決するか確認してください。

「いいね!」 2

@RGJ ご返信ありがとうございます。

少し奇妙なのは、同じバージョン(3.5.0.beta1)で3つの環境を実行しているのですが、この問題は本番環境でのみ発生することです。他の2つの環境(開発およびステージング)は正常に動作しているので、バージョン関連の問題だとは思いません。

疑問に思っているのですが、この問題が報告されたのは初めてですか?過去に同様の報告はありましたか?

それを排除するためにも、まずはアップデートしてください。
また、beta1には多くのセキュリティ脆弱性が含まれているため、いずれにせよアップデートした方が良いでしょう :wink:

「いいね!」 1