SSOのみのログインでアカウントを自己削除すると、`logout redirect`ではなく認証URLにリダイレクトされループが発生します

コンテキスト: ローカルログインが無効、匿名アクセスが無効、および Basic OAuth プラグイン経由で OAuth2 プロバイダーが追加されている場合、ユーザーがログアウトをクリックすると logout redirect URL が尊重されます。

バグ: ただし、ユーザーがアカウントの自己削除を試みると、logout redirect URL にリダイレクトされず、フォーラムの基本 URL に戻されます。これは、匿名表示が無効になっているため、プロンプトなしで SSO 認証 URL にリダイレクトされます。
ユーザーは SSO プロバイダーにまだログインしているため、すぐにアカウントが再作成されます。

最も直接的な修正は、アカウントの自己削除後に logout redirect 設定を単純に順守することだと思います。
さらなる強化策として、自己削除したユーザーのリストを保持し、後で同じ詳細でアカウントが再作成された場合に、以前に削除されたアカウントを再作成しようとしていることを説明するプロンプトを表示し、それを回避できるようにすることが考えられます。管理者がそのような再作成されたアカウントのスタッフによる手動アクティベーションを要求するようにオプトインできるとさらに良いでしょう。

「いいね!」 2

確認ですが、このプラグインでよろしいでしょうか?

また、Oauthについて再度調べているのですが、これをテストするにはローカルのOauth2プロバイダーを設定する必要があるということでしょうか?合っていますか?そして、何かおすすめはありますか? @nat

はい!

あなたが共有したプラグインのREADMEは、良い出発点になりそうです。

「いいね!」 1

Chris様

はい、お話しいただいたプラグインをAuthentikをプロバイダーとして使用した場合、アカウント削除による再登録時のリダイレクトループを除き、すべて意図したとおりに機能しました。

よろしくお願いいたします。

「いいね!」 1

これはマージされました。redirect to /login after account delete to prevent recreation of sso account by marstall · Pull Request #22575 · discourse/discourse · GitHub

「いいね!」 2