关于session缓存

来源:互联网 发布:汽车编程和编码 编辑:程序博客网 时间:2024/05/20 05:24

今天开下班时发现系统有一个session缓存的问题,就是如果是从另一页面链接打开我们系统,然后登陆,不退出,直接关闭浏览器,再从链接进来,竟然不用登陆!

看了一下代码,发现是session缓存了用户信息导致的。 解决办法想了两个,就是页面监听窗口的onClose事件,捕获到该事件后,强制做一下logout,这个方法要修改的页面较多。另外一个办法就是在filter里增加方法,每次进到filter里就将用户的登陆信息从缓存里清除掉,不过这个方法可能会影响用户的体验,需要进行较详细的测试。

试了一下其它类似的系统,发现也是有该问题,看来是通病了。想想,目前大多数系统都会在登陆时把用户信息放到session里,方便后面的权限验证和控制,但没有考虑到session缓存的问题,这会导致用户信息的泄密,或者使得低权限用户看到不应该看到的信息。