【嘉为科技】基于cookie的凭据永久保存

【嘉为科技】基于cookie的凭据永久保存

ID:14214746

大小:132.00 KB

页数:4页

时间:2018-07-26

【嘉为科技】基于cookie的凭据永久保存_第1页
【嘉为科技】基于cookie的凭据永久保存_第2页
【嘉为科技】基于cookie的凭据永久保存_第3页
【嘉为科技】基于cookie的凭据永久保存_第4页
资源描述:

《【嘉为科技】基于cookie的凭据永久保存》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、基于Cookie的凭据永久保存文章类型:软件开发刘斌:软件开发工程师微软认证开发专家(MCPD),多年.NET平台开发经验,从事于于企业应用系统的需求分析、架构设计、程序开发,现为嘉为专职软件开发工程师。【摘要】在项目的开发过程中,碰到有需要凭据永久保存的功能。但在实践过程中,发现凭据过一段时间后就会失效。不断测试、研究才解决了这个问题。在此,将自己探索总结的一些经验与大家分享。【正文】1创建持久的永不过期票据1.1创建Form身份验证票据//设置cookie保持路径stringcookiePath=FormsAut

2、hentication.FormsCookiePath;//设置创建持久的票据,stringcreatePersistentCookie=true;//设置当前用户的信息,如角色、用户名等stringcommaSeperatedRoles=”role1ID,role2ID;userName,userID”;//设置cookie过期时间,单位是分钟intexpirationMinutes=1000000;//创建验证票据ticketFormsAuthenticationTicketticket=newFormsAuth

3、enticationTicket(1,userName,DateTime.Now,DateTime.Now.AddMinutes(expirationMinutes),createPersistentCookie,commaSeperatedRoles,cookiePath);1.2加密验证票据为了用户的隐私、安全,我们需要将票据加密,如下代码所示:stringencrypetedTicket=FormsAuthentication.Encrypt(ticket);1.3将票据返回给客户端//判断客户端浏览器是否支持

4、Cookieif(!FormsAuthentication.CookiesSupported){FormsAuthentication.SetAuthCookie(encrypetedTicket,createPersistentCookie);}else{HttpCookieauthCookie=newHttpCookie(FormsAuthentication.FormsCookieName,encrypetedTicket);//若设置了持久票据,还需设置cookie的过期时间if(ticket.IsPersi

5、stent)authCookie.Expires=ticket.Expiration;HttpContext.Current.Response.Cookies.Add(authCookie);}2修改配置文件2.1修改TimeOut节点将配置文件的forms节点的timeout属性设置成1000000,如下图所示:2.2设置静态MachineKey进入到IIS,双击计算机密钥。然后复选框全去掉,点击右边的生成密钥,如下图所示:打开配置文件,我们可以看到增加了machinekey节点,表示静态machinekey配置成

6、功。如下图所示:3注意事项设置身份验证票据的过期时间之后,不要忘记设置Cookie的过期时间。否则就算票据设置为永久,Cookie过期之后票据也会失效;<>若Web服务器采用了负载均衡,那么每台服务器的静态MachineKey必须设置成一样;

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。