FormsAuthentication.RedirectFromLoginPage 登录

首先讲的这个东西是针对后台数据访问的
比如我的后台是admin文件夹.那么我除非登陆成功才可以访问里面的东西.
那么除了Session对象判断.和Cookies来判断还能用到
FormsAuthentication.RedirectFromLoginPage 登录
首先我们在网站的根目录下的
web.config配置

<authentication mode="Forms">
<forms name=".ASPXUSERDEMO" loginUrl="Login.aspx" protection="All" timeout="30"/>
</authentication>

name=".ASPXUSERDEMO"是默认的可写可不写

后面的大家参加我另外转载的一篇文章
http://www.cnblogs.com/haik/archive/2010/05/01/1725793.html

-----------------------------上面是身份验证的  
-----------------下面是授权的  
   <authorization>  
   <deny    users="?"/>  
   </authorization>  
也是写在web.config配置里.
但是这个web.config我们得放到
需要做判断的文件夹下.比如我们写的admin文件夹下.
呵呵,这个东西很爽的,当用了FORM认证,如果你没有登录,不管你打开的哪页
,都会进入指定的登录页面,登录完成后,又能返回你指定的页...

我们在用的页面这样写

login.aspx中:

   FormsAuthentication.RedirectFromLoginPage(userid,false);
   Response.Redirect("zzz.aspx");

RedirectFromLoginPage是封装了传登录信息,必须要是 mode="Forms"才能传,Response.Redirect转页。

得这个值是Page.User.Identity.Name  //得到userid的值

FormsAuthentication.RedirectFromLoginPage(userid,false);  //两个参数 一个字符串 一个Cookies对象

System.Web.Security.FormsAuthentication.SetAuthCookie(this.txtname.Text,true);

Response.Redirect(“”);

这二行代码实现你在填写登录名和密码后,成功就转到你想转的页面。

System.Web.Security.FormsAuthentication.RedirectFromLoginPage(this.txtname.Text,false);

这一行代码实现你在填写登录名和密码后,成功就转到原先你想到的页面。

这后面的参数“false”说明是否永久保留cookie。True则表示永久保留,下次访问就不用输入密码了,否则断开本次链接后,下次还需要输入密码。这次参数也可以由用户选择,因为考虑到安全性,可以在用户名或密码的傍边放个checkbox,原来的语句可以为:

System.Web.Security.FormsAuthentication.RedirectFromLoginPage(this.txtname.Text,this.CheckBox.Checked);

注:cookie的登出为:

System.Web.Security.FormsAuthentication.SignOut();

--------------------- 本文来自 works07 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/works07/article/details/5909866?utm_source=copy 

posted on 2018-10-03 22:53  asdyzh  阅读(676)  评论(0编辑  收藏  举报

导航