SSOまたはブラウザセッションとのログアウト同期方法

シナリオ:

ユーザー1がブラウザを起動し、SSO を使用してフォーラムに接続します。しばらく作業した後、ブラウザを閉じます。

同じマシン上でユーザー2がブラウザを起動し、再度 SSO を使用してフォーラムにログインします。このプロセスでは、ユーザー2の資格情報を用いた完全なログイン処理が行われますが、フォーラムに入るとユーザー1としてログインした状態になります。

Discourse では、セッションのタイムアウトを最短で 1 時間に設定できます。つまり、ユーザーは 1 時間以内に PC に戻り、単にログインするだけで、クッキーから前のユーザーの識別情報を取得してそのユーザーとしてセッションを再開できてしまいます。

2016 年にブラウザを閉じた際にクッキーが無効化されるようにする修正が行われましたが、その後元に戻されました。

このため、ブラウザがプライベートモードで動作するように設定されていない場合、複数の人が同じワークステーションを使用する環境では、ソフトウェアのセキュリティが非常に脆弱になります。

この問題に対する修正はありますか?

ありがとうございます

ピーター

同じ質問には同じ回答:

上記のコミット(取り消されたもの)のコードを確認し、それをプラグインに移植してご自身のニーズに合わせて調整してください。

また、SSO システム側でログアウト統合を実装することも可能です。ユーザーがログアウトした際に Discourse を呼び出して、同じユーザーのすべての既存セッションを終了させることができます。

なお、これはセキュリティ上の欠陥とは見なされません。

「いいね!」 1

このような状況で大きな価値があったコードが元に戻されたのは残念です。

セッションを終了するために必要な Discourse の呼び出しについて、ご教示いただけますでしょうか。

ありがとうございました、ラファエル

これに関する便利なガイドはこちらにあります:

「いいね!」 3