j2ee系统 点击登录后,点浏览器后退按钮又回到登录页面,然后再点前进又进入系统,这样很不安全

昨日情书 2010-10-22 08:58:46
请问大家 jsp页面如果禁用浏览器后退前进按钮
比如我做一个登陆页面 登陆到系统了 然后客户点后退又退到登陆页面,点前进又进去了 这样系统很不安全 大家以前做过类似的东西吗 网上说的什么禁用缓存的方法我试过了 根本没什么反应,我也不想用那个js脚本 点后退就来个前进的操作,那样很不人性化,我看网上 百合网,人人网的登录都做的不错,我看登录页面里也没有什么cache的字样,不知道他们怎么做的,又做过类似的问题的人吗
...全文
910 22 打赏 收藏 转发到动态 举报
写回复
用AI写文章
22 条回复
切换为时间正序
请发表友善的回复…
发表回复
my0510520 2010-10-25
  • 打赏
  • 举报
回复
[Quote=引用 17 楼 zhoujieyaoqu 的回复:]
都没有答到点子上,这个东西在各种框架中解决中是不一样的,不过有一个万能的方法,那就是加验证码,别的方法就比较麻烦了,google一下有的
[/Quote]

验证码只限于登录时候,他是已经登录了,然后后退
jacklondon 2010-10-25
  • 打赏
  • 举报
回复
用 response.setHeader("Expire","-1");
zxd21zyy 2010-10-25
  • 打赏
  • 举报
回复
后退前进应该就可以的啊,人人网后退后,也能用前进进入啊,我测试了N次了,都可以的啊
qunhao 2010-10-23
  • 打赏
  • 举报
回复
感觉这个很正常,好像没有安全方面的问题。
my0510520 2010-10-23
  • 打赏
  • 举报
回复
servlet、action判断session是否为空,由于我现在没有环境,我就没写代码
javagongcheng 2010-10-23
  • 打赏
  • 举报
回复
学习了..
kkvoo 2010-10-23
  • 打赏
  • 举报
回复
我想知道楼主用什么做的系统,JSP吗?
zhoujieyaoqu 2010-10-23
  • 打赏
  • 举报
回复
都没有答到点子上,这个东西在各种框架中解决中是不一样的,不过有一个万能的方法,那就是加验证码,别的方法就比较麻烦了,google一下有的
q262067995 2010-10-23
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 closewbq 的回复:]
首先点击退出的时候,要把session进行clear。
然后在登录页面history.go(1);来禁止后退就够了!
[/Quote] ok
qianyecq 2010-10-22
  • 打赏
  • 举报
回复
我的解决办法是在退出的时候不使用forward或是sendRedirect
而是直接输出页面,先flush再加载,这样就回退不到原来的那个页面了。

String path = request.getContextPath();
String basePath = request.getScheme() + "://" + request.getServerName()
+ ":" + request.getServerPort() + path + "/";
response.setContentType("text/html; charset=UTF-8"); //转码
PrintWriter out = response.getWriter();
out.flush();
out.println("<script>");
out.println("window.location = \""+basePath+"\";");
out.println("");
out.println("</script>");
out.close();
pengzhistar 2010-10-22
  • 打赏
  • 举报
回复
我不清楚你说的安全漏洞只的是什么!我可以肯定的说:人人网后退也是后退到你的前一个链接地址!还有你使用的代码无效! 你说正在使用的东西会不存在你的电脑内存吗!
昨日情书 2010-10-22
  • 打赏
  • 举报
回复
pengzhistar 人人网是可以后退,但是点击后退后不退回到登录页面,他的确是判断session ,可是怎么做到点击后退判断session里是否有值啊,我做的点击后退按钮,就是直接从缓存里读页面,而不是重新加载页面判断session,怎么样做到浏览器不缓存jsp页面呢,网上说加
 <META   HTTP-EQUIV=”Pragma”   CONTENT=”no-cache”>
<META HTTP-EQUIV=”Cache-Control” CONTENT=”no-cache”>
<META HTTP-EQUIV=”Expires” CONTENT=”0”>
这个 但是也不好用啊
my0510520 2010-10-22
  • 打赏
  • 举报
回复
人人网他有验证页,因为Session里有值他就进主页
jackemark 2010-10-22
  • 打赏
  • 举报
回复
可以先判断用户是否登录 来避免重复登录吗


大多数使用的是异步请求

所以比较好控制一些
qianyecq 2010-10-22
  • 打赏
  • 举报
回复
我也遇到同样的问题,昨天问了,还没解决。
pengzhistar 2010-10-22
  • 打赏
  • 举报
回复
而且人人网的登录是肯定也可以后退的!
pengzhistar 2010-10-22
  • 打赏
  • 举报
回复
我不晓得这有什么不安全的!浏览器后退读的是本地的缓存,并没有与服务交互!会话没中断,肯定没退出登陆咯!
as23355 2010-10-22
  • 打赏
  • 举报
回复
我觉得可以直接在登录页面判断session

或者在加载主页的时候清空session
closewbq 2010-10-22
  • 打赏
  • 举报
回复
首先点击退出的时候,要把session进行clear。
然后在登录页面history.go(1);来禁止后退就够了!
fdhsfdsjh 2010-10-22
  • 打赏
  • 举报
回复
我觉得这没问题呀

67,515

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧