私はc#mvc Webアプリケーションを持っています。電子メールとパスワードに従って簡単なログインページがあります。今私はそのようなニーズがあります: ユーザーがシステムにログインすると、同じ電子メールアドレスを持つすべてのアクティブなセッションがログアウトします。 これをどうすれば実現できますか?MVCは同じユーザーログイン後にすべてのアクティブセッションをログアウトします
1
A
答えて
2
あなたはSession.Abandon()
またはClear()
は、現在のセッションを放棄するために使用することができますが、複数の人が同じアドレスでログインして存在する場合、これはそれを解決しません。
簡単なチェックは行います。
あなたはその検出をビルドする必要があります。たとえば、ユーザーを表すテーブルのフラグを更新し、他のユーザーのセッションで、テーブルが再ログインした場合は定期的にテーブルをチェックすることができます。ユーザーがログインすると、データベーステーブルにトークンを作成します。有効期限;そのトークンをクッキー内のユーザに関連付ける。ログアウトまたはログインし直すと、その電子メールアドレスに関連付けられているトークンが無効になり、各ユーザーがアプリケーションにアクセスしようとすると、トークンが期限切れになっているかどうかをアプリケーションが拒否する可能性があります。
1
Abandon
方法は、(MSDNを)動作するはずです:
Session.Abandon();
セッションの使用(MSDN)から特定の項目を削除する場合:
Session.Remove("YourItem");
あなただけクリアしたい場合あなたが行うことができる価値:
Session["YourItem"] = null;
すべてのキーをクリアするには:
Session.Clear();
これらのどれもあなたのためにうまくいかない場合、何か怪しげなことが起こっています。値を割り当てている場所を確認し、値をクリアした後に再割り当てされていないことを確認します。
Session["YourKey"] = "Test"; // creates the key
Session.Remove("YourKey"); // removes the key
bool gone = (Session["YourKey"] == null); // tests that the remove worked
関連する問題
- 1. ASP.NET MVCの同じアカウントでのユーザーログインを防止する方法
- 2. Symfony SecurityBundle:ログアウト後に同じページに留まるには?
- 3. ログアウトURLは同じウィンドウと同じタブにあります
- 4. すべてのMVCプラットフォームは同じですか?
- 5. Laravelは同じユーザーの複数のセッションを作成してログアウトします
- 6. Branch.ioはユーザーログイン後にリダイレクトされます
- 7. .htaccessは、すべてのページを同じページにリダイレクトします。
- 8. MVCユーザーログインとセッション
- 9. ASP.NET MVC - 最後の投稿に応じてフォーラムスレッドを並べ替えます
- 10. codeigniterパスワードを変更した後、すべてのブラウザからログアウトします
- 11. MVCでHttp Postの後に同じビューをレンダリングする
- 12. header()は同じページのすべてをロードしますajax
- 13. PRNGはすべてのプロセスで同じ値を返します
- 14. すべての画像を同じサイズにします
- 15. ArrayListはすべてのインデックスに対して同じ要素を返します
- 16. すべてのマシンは、同じシードを使用して同じ乱数の結果を生成しますか?
- 17. Azure Sqlサーバアドレスはすべて同じ場所を指します
- 18. DockerをASP.NETコアにデプロイした後の自動ログアウトMVC ID
- 19. ログアウト時にすべての活動を終了します
- 20. ユーザーログイン後にコンテンツを追加
- 21. jquery each()はすべてのオブジェクトを同じものとして返します
- 22. ユーザーログイン後のFacebookログインウィンドウ
- 23. codeigniter - ログアウト後のボタンはまだ動作しています
- 24. mvcの同じビューにデータを挿入して表示する
- 25. UITableViewAutomaticDimensionを使用した後、すべて同じ高さになる
- 26. ASP.NET MVCアプリケーションはランダムにユーザーをログアウトします
- 27. すべてのテストは、同じクラスの最初の@Test失敗後自動的に失敗します
- 28. MVC:同じ[HTTPOST]アクションメソッドで編集して作成します
- 29. クエリは、IDが同じときにすべてのデータを取得します
- 30. 同じカテゴリのすべての記事を同じリストに表示する