以下是我的代碼示例:表單身份驗證安全
這是我只想鎖定到用戶的頁面。
[Authorize]
public ActionResult Profile()
{
HttpCookie authCookie = Request.Cookies[FormsAuthentication.FormsCookieName];
FormsAuthenticationTicket ticket = FormsAuthentication.Decrypt(authCookie.Value);
var users = _service.Get().Where(x => x.EmailAddress.ToLower() == ticket.Name);
var user = users.First();
return View(user);
}
這是我記錄我的用戶在:
[HttpPost]
public ActionResult Login(LoginViewModel model)
{
if (!ModelState.IsValid)
return View(model);
var exs = _service.ValidateUser(model.EmailAddress, model.Password);
if (exs.Any())
{
AddModelExceptionsToModelState(ModelState, exs);
return View(model);
}
FormsAuthentication.SetAuthCookie(model.EmailAddress,model.RemeberMe);
return RedirectToAction("Profile");
}
我不知道我在做什麼,安全的,它被保存並不重要信息,但我想它是安全。
以上登錄/授權方法是否遇到安全/安全的使用方法?
如果是的話如何創建一個方法來返回登錄用戶?我最好是在一個抽象控制器類中做到這一點,然後從它中間擊中它?
是否有更好的方式來處理用戶的登錄和註銷?
我正在使用實體框架和MVC5。請注意,我不能使用會員資格數據庫,因爲它不允許在此項目中使用。
使用mvc5中的新型會員資格。不要使用具體類型,而要自己實現接口。它是開源的,因此您可以瞭解他們如何執行標準的成員資格操作。 – DrinkBird
你能指出我正確的方向嗎? – LmC
真的屬於codereview.stackexchange.com –