一:web.config配制文件

Forms身份验证自已总结的解决方案<authentication mode="Forms">
Forms身份验证自已总结的解决方案        
<forms name="HuiBao" loginUrl="logon.aspx" protection="All" timeout="60" path="/">
Forms身份验证自已总结的解决方案        
</forms>
Forms身份验证自已总结的解决方案 
</authentication> 
Forms身份验证自已总结的解决方案
<authorization>
Forms身份验证自已总结的解决方案        
<deny users="?" />
Forms身份验证自已总结的解决方案        
<allow users="*" /> 
Forms身份验证自已总结的解决方案
</authorization> 
Forms身份验证自已总结的解决方案
Forms身份验证自已总结的解决方案     
<location path="EditAccount.aspx">
Forms身份验证自已总结的解决方案          
<system.web>
Forms身份验证自已总结的解决方案               
<authorization>
Forms身份验证自已总结的解决方案                    
<allow roles="Mean"/>
Forms身份验证自已总结的解决方案                    
<deny users="*" />
Forms身份验证自已总结的解决方案               
</authorization>
Forms身份验证自已总结的解决方案       
</system.web>
Forms身份验证自已总结的解决方案  
</location>//这里用限制某一目录下的页面或某一页中可以访问的角色,如果角色不对,自动导向到Logon.aspx页面,很方便,但缺点是人性化不高,不能弹出提示,所以下面用在每个页面的pageLoad事件里判断角色再转向。
Forms身份验证自已总结的解决方案
Forms身份验证自已总结的解决方案

二:Logon.aspx页面
//在用户登录验证完毕后调用此方法写cookie,用户名作cookie名,用户角色 作为cookie的内容

Forms身份验证自已总结的解决方案private void setCook(string userName,string userRole)

此方法底下还有两句,导到原请求页面去的,但在第一次登录的时候会自动导到default.aspx页面,所以取消了。

1Forms身份验证自已总结的解决方案string requestUrl = FormsAuthentication.GetRedirectUrl(FormsAuthentication.FormsCookieName,false);
2Forms身份验证自已总结的解决方案HttpContext.Current.Response.Redirect(requestUrl);

三:Global.asax页面

Forms身份验证自已总结的解决方案
Forms身份验证自已总结的解决方案
protected void Application_AuthenticateRequest(Object sender, EventArgs e)

四:在任意页面中

Forms身份验证自已总结的解决方案private void Page_Load(object sender, System.EventArgs e)
  }

//注销

Forms身份验证自已总结的解决方案FormsAuthentication.SignOut();//注销 
Forms身份验证自已总结的解决方案
Response.Redirect("logon.aspx",true);

相关文章: