Java 阻止用户在jsp中注销后返回
可能重复:Java 阻止用户在jsp中注销后返回,java,javascript,jsp,Java,Javascript,Jsp,可能重复: 我需要通过阻止用户在注销后访问java应用程序(mvc)来保护java应用程序的安全 目标: 1.最终用户在注销后不能使用浏览器后退按钮访问受限页面。 2.最终用户在注销后应无法访问浏览器历史记录中的任何受限URL 在谷歌搜索之后,我明白了禁用浏览器后退按钮不是一个好的做法。那么如何在JSP中实现最好的效果呢 谢谢和问候 Ashish保护资源的一般方法- 将会话属性检查(例如用户对象)放入受限页面 控制器 注销后使会话无效 保护您的资源的一般方法- 将会话属性检查(例如用户对象)放
我需要通过阻止用户在注销后访问java应用程序(mvc)来保护java应用程序的安全 目标: 1.最终用户在注销后不能使用浏览器后退按钮访问受限页面。 2.最终用户在注销后应无法访问浏览器历史记录中的任何受限URL 在谷歌搜索之后,我明白了禁用浏览器后退按钮不是一个好的做法。那么如何在JSP中实现最好的效果呢 谢谢和问候
Ashish保护资源的一般方法-
保护您的资源的一般方法-
在每个页面中,您可能都可以清除
缓存页面
<%
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");
%>
在
注销
中,您必须使会话无效,因此当您单击“上一步”时,它将检查会话
中的某些令牌
属性值,如果不在那里,它将重定向到登录
页面。但是请记住,在登录后,您正在会话中设置某些\u令牌
属性。在每个页面中,您可能都可以清除缓存页面
<%
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");
%>
在
注销
中,您必须使会话无效,因此当您单击“上一步”时,它将检查会话
中的某些令牌
属性值,如果不在那里,它将重定向到登录
页面。但是请记住,在登录后,您正在会话中设置一些令牌属性。对于每个受限制的JSP/Servlet,您应该检查用户是否已登录。如果用户未登录,请将其重定向到非限制页面。(这不需要任何JavaScript)
当用户注销时,您将使会话无效,因此当用户尝试访问受限JSP/Servlet页面时,您的身份验证逻辑将重定向他
<% session.setAttribute("userId", null); // in your logout.jsp page %>
对于每个受限JSP/Servlet,您应该检查用户是否已登录。如果用户未登录,请将其重定向到非限制页面。(这不需要任何JavaScript)
当用户注销时,您将使会话无效,因此当用户尝试访问受限JSP/Servlet页面时,您的身份验证逻辑将重定向他
<% session.setAttribute("userId", null); // in your logout.jsp page %>
使用java脚本清除缓存!使用java脚本清除缓存!坏习惯。这还不够干,这是一个坏习惯。这不够干。这不考虑浏览器缓存。这不考虑浏览器缓存。