form身份验证通过后,只能用FormsAuthentication.RedirectFromLoginPage
form身份验证通过后,只能用FormsAuthentication.RedirectFromLoginPage
发布时间:2016-12-29 来源:查字典编辑
摘要:直接用Response.Redirect("default.aspx")的话当然验证失败,因为你根本没有建立身份验证票。FormsAuthe...

直接用Response.Redirect("default.aspx")的话当然验证失败,因为你根本没有建立身份验证票。FormsAuthentication.RedirectFromLoginPage方法,会自动完成很多功能的。如完成生成身份验证票,写回客户端,浏览器重定向等一系列的动作。当然完成这些功能并不是只有FormsAuthentication.RedirectFromLoginPage方法才能办到,相反如果需要带角色信息的验证则只能采用其他办法。

我门可采用手动添加身份验证票

1.

复制代码 代码如下:

FormsAuthenticationTicket Ticket = new FormsAuthenticationTicket (1,"coffee",DateTime.Now, DateTime.Now.AddMinutes(20), false,UserRoles,"/") ;

注:UserRoles不知道就写""

2.加密序列化

复制代码 代码如下:

string HashTicket = FormsAuthentication.Encrypt (Ticket) ;

3.生成cookie

复制代码 代码如下:

HttpCookie UserCookie = new HttpCookie(FormsAuthentication.FormsCookieName, HashTicket) ;

cookie.Domain = ".jb51.net";

4.身份验证票Cookie输出到客户端

复制代码 代码如下:

Response.Cookies.Add(UserCookie)

5.重定向

复制代码 代码如下:

Response.Redirect (Context.Request["ReturnUrl"]) ;

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新asp.net教程学习
热门asp.net教程学习
编程开发子分类