FormsAuthentication的作用是,当你请求某个url时,没有传form票据时,就拒绝你的访问。
form票据的授予,是在你登录成功时授予给你的。其本质是维护一个cookie。
1.登陆时
sysAdmins = new SysAdminManager().AdminLogin(sysAdmins);
if (sysAdmins != null)
{
Session["currentAdmin"] = sysAdmins.LoginId;
FormsAuthentication.SetAuthCookie(sysAdmins.LoginName, true);//签发身份票据
return View("AdminMain");
}
2.退出时
/// <summary>
/// 退出系统
/// </summary>
/// <returns></returns>
public ActionResult ExitSys()
{
Session["currentAdmin"] = null;
Session.Abandon();
FormsAuthentication.SignOut();
return View("AdminLogin");
}
3.当你访问其它页面时,却没有身份票据时,就会跳转到登陆页面,在web.config的配置如下:
<authentication mode="Forms">
<forms loginUrl="~/WebHotelManage/SysAdmin/Index" timeout="2880"></forms>
</authentication>
|