2011-07-20 31 views
0

MVC3で、コントローラで([ログイン]ページを除くすべてのページに適用されるフィルタで)[認証]を引き続き使用できるようにするにはどうすればよいですか?ASP.NET MVC3認証とセッション

  1. ユーザーは、投稿要求としてサーバーに送信されるユーザー名とパスワードを入力します。
  2. アプリケーション[httpPost]ログインページに掲載されている情報を受信
  3. アプリケーションは、次のSESSIONID新しいユニークを作成し、ブラウザが値SESSIONIDでクッキーを書き込み、データベース
  4. アプリケーション要求=
  5. に書き込みますユーザーがSESSIONID =を持つページCookieを要求すると、毎回送信されます。 (期限切れまたは削除されるまで)
  6. アプリケーションはSESSIONIDと送信されたIPアドレスを比較し、そのIPとの有効なセッションとして存在するかどうかをデータベースにチェックします。 (一部のセッションクリーンアップはログイン時にも実行されますが、存在する他のセッションは削除されます)

このアプローチは、ASP.NETではかなり難しいようです。 :-)

答えて

4

これはすでにAsp.Netに組み込まれています。私はあなたがメンバーシッププロバイダを見てみるべきだと思います =>http://msdn.microsoft.com/en-us/library/yh26yfzy.aspx

+0

+1この場合、メンバーシップとFormsAuthenticationクラスで焼き上げたものを使ってください。 – Andrew

+0

独自のカスタムスキームでも可能ですか?組み込みのメンバーシップテーブルではなく、シンプルなセッションテーブルとシンプルなユーザーテーブルを必要とするすべての属性は必要ありません。 – LochNess

+0

はい、できます! ;)独自のロジックを使用して、独自のメンバーシッププロバイダを実装することができます。 – dknaack

関連する問題