有免费建网站,东营网站建设方案,有什么做户外活动的网站吗,广州网站建设定制价格一般情况下#xff0c;在我们做访问权限管理的时候#xff0c;会把用户的正确登录后的基本信息保存在Session中#xff0c;以后用户每次请求页面或接口数据的时候#xff0c;拿到Session中存储的用户基本信息#xff0c;查看比较他有没有登录和能否访问当前页面。Session的…一般情况下在我们做访问权限管理的时候会把用户的正确登录后的基本信息保存在Session中以后用户每次请求页面或接口数据的时候拿到Session中存储的用户基本信息查看比较他有没有登录和能否访问当前页面。Session的原理也就是在服务器端生成一个SessionID对应了存储的用户数据而SessionID存储在Cookie中客户端以后每次请求都会带上这个Cookie服务器端根据Cookie中的SessionID找到存储在服务器端的对应当前用户的数据。FormsAuthentication是微软提供给我们开发人员使用做身份认证使用的。通过该认证我们可以把用户Name 和部分用户数据存储在Cookie中通过基本的条件设置可以很简单的实现基本的身份角色认证。 配置项描述 authentication modeFormsformsname.ASPXAUTHloginUrllogin.aspxdefaultUrldefault.aspxprotectionAlltimeout30path/requireSSLfalseslidingExpirationfalseenableCrossAppRedirectsfalsecookielessUseDeviceProfiledomain/
/authentication以上代码使用的均是默认设置换言之如果你的哪项配置属性与上述代码一致则可以省略该属性例如forms nameMyAppAuth /。下面依次介绍一下各种属性 nameCookie的名字。Forms Authentication可能会在验证后将用户凭证放在Cookie中name属性决定了该Cookie的名字。通过FormsAuthentication.FormsCookieName属性可以得到该配置值稍后介绍FromsAuthentication类。loginUrl登录页的URL。通过FormsAuthentication.LoginUrl属性可以得到该配置值。当调用FormsAuthentication.RedirectToLoginPage()方法时客户端请求将被重定向到该属性所指定的页面。loginUrl的默认值为“login.aspx”这表明即便不提供该属性值ASP.NET也会尝试到站点根目录下寻找名为login.aspx的页面。defaultUrl默认页的URL。通过FormsAuthentication.DefaultUrl属性得到该配置值。protectionCookie的保护模式可取值包括All同时进行加密和数据验证、Encryption仅加密、Validation仅进行数据验证和None。为了安全该属性通常从不设置为None。timeoutCookie的过期时间。pathCookie的路径。可以通过FormsAuthentication.FormsCookiePath属性得到该配置值。requireSSL——在进行Forms Authentication时与服务器交互是否要求使用SSL。可以通过FormsAuthentication.RequireSSL属性得到该配置值。slidingExpiration——是否启用“弹性过期时间”如果该属性设置为false从首次验证之后过timeout时间后Cookie即过期如果该属性为true则从上次请求该开始过timeout时间才过期这意味着在首次验证后如果保证每timeout时间内至少发送一个请求则Cookie将永远不会过期。通过FormsAuthentication.SlidingExpiration属性可以得到该配置值。enableCrossAppRedirects——是否可以将以进行了身份验证的用户重定向到其他应用程序中。通过FormsAuthentication.EnableCrossAppRedirects属性可以得到该配置值。为了安全考虑通常总是将该属性设置为false。cookieless——定义是否使用Cookie以及Cookie的行为。Forms Authentication可以采用两种方式在会话中保存用户凭据信息一种是使用Cookie即将用户凭据记录到Cookie中每次发送请求时浏览器都会将该Cookie提供给服务器。另一种方式是使用URI即将用户凭据当作URL中额外的查询字符串传递给服务器。该属性有四种取值——UseCookies无论何时都使用Cookie、UseUri从不使用Cookie仅使用URI、AutoDetect检测设备和浏览器只有当设备支持Cookie并且在浏览器中启用了Cookie时才使用Cookie和UseDeviceProfile只检测设备只要设备支持Cookie不管浏览器是否支持都是用Cookie。通过FormsAuthentication.CookieMode属性可以得到该配置值。通过FormsAuthentication.CookiesSupported属性可以得到对于当前请求是否使用Cookie传递用户凭证。domain——Cookie的域。通过FormsAuthentication.CookieDomain属性可以得到该配置值。 登录代码 [HttpPost]
public ActionResult LogOn(LogOnModel model)
{if (ModelState.IsValid){if (model.UserName username model.Password password){FormsAuthentication.RedirectFromLoginPage(model.UserName, model.RememberMe);}}return View(logon failed!);
}退出代码 public ActionResult LogOff()
{//FormsService.SignOut();FormsAuthentication.SignOut();return RedirectToAction(Index, Home);
}转载于:https://www.cnblogs.com/wolfocme110/p/5711423.html