防止用户在jsp中注销后返回
Preventing User to go back after logout in jsp
可能重复:
阻止用户在退出后返回上一个安全页面
我需要通过防止用户在注销后访问java应用程序(mvc(来保护它。
目标:
1.最终用户在注销后应无法使用浏览器返回按钮访问受限页面。2.最终用户在退出后,不应能够访问浏览器历史记录中的任何受限URL
谷歌搜索后,我明白禁用浏览器返回按钮不是一个好的做法。那么,我如何才能在JSP中达到最佳效果呢?
谢谢&当做Ashish
在每一页中,您可能都可以清除cached page
。
<%
response.setHeader("Cache-Control","no-cache");
response.setHeader("Cache-Control","no-store");
response.setHeader("Pragma","no-cache");
response.setDateHeader ("Expires", 0);
if(session.getAttribute("some_token")==null)
response.sendRedirect("login/login.html");
%>
在logout
中,您必须使会话无效,因此当您单击返回时,它会检查session
中的some_token
属性值,如果没有,它会将您重定向到login
页面。但请记住,登录后您正在会话中设置some_token
属性。
保护资源的通用方法-
- 将会话属性检查(例如用户对象(放入受限页面控制器
- 注销后使会话无效
对于每个受限制的JSP/Servlet,您应该检查用户是否已登录。如果用户未登录,请将其重定向到非受限制的页面。(你不需要任何JavaScript(
<%
int userId = session.getAttribute("userId");
if(userId == null) {
response.sendRedirect(redirectURL);
}
%>
当用户注销时,您会使会话无效,所以当用户试图访问受限制的JSP/Servlet页面时,您的身份验证逻辑会重定向他。
<% session.setAttribute("userId", null); // in your logout.jsp page %>
相关文章:
- 节点导出返回一个空对象
- ES6构造函数返回基类的实例
- 监视函数从服务返回不起作用,但作用域函数起作用
- 控制台返回var不是't定义,但它是
- 从函数返回角度承诺
- Javascript返回值只在循环中返回一次
- 从控制器返回后Ajax启动事件激发
- CKFinder 3为所选文件返回错误的URL
- 如何在d3.js中返回路径的y坐标
- 如何从jquery函数返回变量
- Angular js-返回一个包含类似
- JSONP请求返回结果,但也触发error_callback
- 如何使用Spring MVC将Facebook返回的响应数据保存在Java类中
- 从HTTPGET返回一个自定义对象列表,以便在Angular 2应用程序中使用
- 如何阻止/防止用户在注销后返回上一页 ASP.NET
- 用户注销后显示登录,然后按返回按钮
- 简单的facebook注销返回调用没有访问令牌
- 在注销Python后处理浏览器的“返回”和“下一步”按钮
- 在firefox 5.0中,禁止用户在注销后返回到安全页面
- 防止用户在jsp中注销后返回