码迷,mamicode.com
首页 > Web开发 > 详细

asp.net 无cookie会话带来的问题

时间:2014-08-29 14:43:38      阅读:170      评论:0      收藏:0      [点我收藏+]

标签:.net   cookie   ssl   cookieless   

无cookie会话的目的是使不支持或者未启用cookie的浏览器能够使用有状态的应用程序,但是无cookie并不是没有问题。首先,当会话开始时,不论用户发出的是否为应用程序页面的绝对url,无cookie都会引发重定向。

若使用无cookie,且在地址栏输入另一个应用程序的地址,那么在返回之前的页面时,获取的是相对的会话值。如果禁用cookie,会话数据则会丢失。由于回发会自动通过相对URL来实现,因而禁用cookie不会对此有影响,但如果使用绝对URL的连接,则会造成严重的问题,在这种情况下,总会创建新的会话。例如下面的代码就会中止当前会话:

<a runat="server" href="/test/session.aspx">click</a>

有什么办法能自动修正链接和超链接中的绝对url,使其融入会话信息?为此,我们可以使用HttpResponse类的ApplyAppPathModifier方法

<a href=‘<% = Response.ApplyAppPathModifier("test/page.aspx")%>‘>click</a>

使用无cookie会话还会带来安全问题,对于无cookie会话,会话ID会暴露在地址栏中,对外界可见。因此如果要将私人或敏感信息存储在会话中,那么使用安全套接层(SSL)或者安全传输层(TLS)对浏览器和服务器间包含会话ID的通信进行加密。

此外,还可以给用户提供注销功能,并调用Abandon方法。



asp.net 无cookie会话带来的问题

标签:.net   cookie   ssl   cookieless   

原文地址:http://blog.csdn.net/u012576247/article/details/38924983

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!