首页 > 编程 > .NET > 正文

form身份验证通过后,只能用FormsAuthentication的操作方法

2024-07-10 12:53:32
字体:
来源:转载
供稿:网友

当我们进行访问权限管理时,我们将在会话中正确登录后保存用户的基本信息,当用户请求页面或接口数据时,他将获取存储在会话中的用户基本信息,以检查他是否已登录以及是否可以访问当前页面,下文是错新技术频道小编为您整理的form身份验证通过后,只能用FormsAuthentication的操作方法。

直接用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"]) ;

 以上就是form身份验证通过后,只能用FormsAuthentication的操作方法,更多内容请继续关注错新技术频道其它相关文章!

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表