您的位置:首页 > 其它

FormsAuthentication.RedirectFromLoginPage 登录

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

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

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

后面的大家参加我另外转载的一篇文章
/article/7148641.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();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐