asp.net mvc 4 での認証に関する簡単な質問があると思います。明確でないことの 1 つは、ユーザー データを認証 Cookie に追加/シリアル化できることです。ユーザーデータを認証Cookieに入れることと、ユーザーデータをセッションに追加することの利点/トレードオフは何ですか? ユーザーに固有のものを認証 Cookie に入れる必要さえありますか? すべてのユーザー データをシリアル化して Cookie に入れ、セッションを使用してユーザー データを保存しないようにする必要がありますか?
私のアプリケーションは非常に単純で、ロールはありません。必要に応じて適切にスケーリングできるようにしたいだけです。
ここでは、ユーザーの電子メールを認証 Cookie に入れ、ユーザー オブジェクトをセッションに追加するだけです。次のコードを使用してユーザーを承認しています。
FormsAuthenticationTicket authTicket = new FormsAuthenticationTicket(
1,
user.Email,
DateTime.Now,
DateTime.Now.AddMinutes(15),
false,
user.Email); // adding the user email in the authTicket
string encTicket = FormsAuthentication.Encrypt(authTicket);
HttpCookie faCookie = new HttpCookie(FormsAuthentication.FormsCookieName, encTicket);
Session["User"] = user; //adding user data to session
Response.Cookies.Add(faCookie);
return RedirectToAction("Summary", "Account");
どんな洞察も本当に感謝しています。ありがとう!