ASP.NET MVCで、同じアカウントによる以前のログインセッションを「キック」するための新しいログインを許可したいと思います。
各ブラウザにセッションIDを表す料理を提供することはかなり明らかなようです。サーバー側のキャッシュで現在アクティブなセッションIDを追跡します。すでにアクティブなユーザーがログインしようとした場合は、ビジネスロジック(ユーザー名、パスワード、最後のアクティビティから15分以上経過している)を確認してから、サーバーにキャッシュされているアクティブなセッションIDを更新します。
今私の問題は、ブラウザが無効なセッションIDを保持していることです。このシナリオで拒否を挿入したり、サインインにリダイレクトしたりするのに最適なポイントは何ですか?
AuthorizeAttributeを変更することはできますが、Global.asaxイベントやコントローラーイベント(I '私のプロジェクトではすでにControllerを拡張しています)。
たとえば、PreAuthorizeが存在する場合は、有効なユーザー/セッションIDペアについてリクエストのCookieをテストするためのコードをそこに記述し、存在しない場合は、リクエストから認証Cookieを削除するだけで済みます。標準の不正なリダイレクト。