5

私が持っているプロジェクトを ASP.NET Web フォームから MVC 4 にアップグレードしようとしています。

アップグレードの過程で、認証とログインの処理方法を再評価しようとしています。

現在、ユーザーがログインを試みると、私 (フロントエンド) がデータベースを呼び出して検証を行い、関連付けられた「トークン」とともに yay または nay として返されます。次に、そのトークンをサイトの次のページに渡し、JavaScript オブジェクトに配置する必要があります。そのトークンは、すべての ajax 呼び出しで渡され、毎回新しいトークンで更新されます。クライアント ブラウザ内でそのトークンを個人的に管理します。

現在、MVC 4 では、デフォルトのインターネット アプリケーションに、何らかの形式のローカル登録とログインを採用するために必要なロジックが付属しています。しかし、私はそれがどのように機能するのか理解していません。

ユーザーが「登録」した後、それはどこに保存されますか?

ユーザーがログインしてからページを変更した場合、そのユーザーはどのようにログイン状態を維持しますか?ユーザーの資格情報はどのように渡されますか?

ログインを処理する現在の方法は、著しく時代遅れであり、欠陥があるように思えます。しかし、現時点では、ユーザーを認証するために現在の (外部、このプロジェクト内ではない) データベースを参照するように MVC をセットアップする方法がわかりません。

私は MVC 4 に関する本を持っていますが、これがどのように機能するかについて詳しく説明していないようです。

どんな助けでも大歓迎です。

ありがとう!

4

2 に答える 2

7

ユーザーが「登録」した後、それはどこに保存されますか

VS2012、ASP.NET MVC 4 を使用した場合、ユーザーは に保存されLocalDBます。これは、 new を使用するデフォルトのすぐに使える実装ですSimple Membership Provider

ユーザーがログインしてからページを変更した場合、そのユーザーはどのようにログイン状態を維持しますか?ユーザーの資格情報はどのように渡されますか?

現在認証されているユーザーは、暗号化されたForms AuthenticationCookie に保存されます。LogOnこの Cookie を発行する POST アクションを見てください。

于 2012-12-18T21:42:18.943 に答える
3

同様の質問がありました。ここで私の投稿を見ることができますが、私が見つけて行った解決策はこの記事からのものでした。新しいSimpleMembershipシステムがどのように機能するかについて非常に詳細です.

最大の変更点は、aspnet_regsql が不要になったことです。登録すると、ユーザーの行とともにデータベース スキーマが作成されます。SP やビューは必要ありません。

于 2012-12-18T21:41:15.973 に答える