如何从document.execCommand(“;ClearAuthenticationCache”;)保护我的JSESSIONID?
这可能是这个问题的重复,但提出的解决方案对我们来说不可行: 长话短说:IE有一种使用JavaScript-如何从document.execCommand(“;ClearAuthenticationCache”;)保护我的JSESSIONID?,session,tomcat,cookies,jsessionid,Session,Tomcat,Cookies,Jsessionid,这可能是这个问题的重复,但提出的解决方案对我们来说不可行: 长话短说:IE有一种使用JavaScript-document.execCommand(“ClearAuthenticationCache”)清除会话cookie的方法。这在各种web应用程序中都有使用,包括Outlook web App(可能还有许多其他应用程序)。问题是MS凭借其无穷的智慧决定,此命令应该清除所有开放站点的会话cookies(你能告诉我我有点痛苦吗,我花了几个月的时间才找到随机丢失的JSessionID的来源) 我
document.execCommand(“ClearAuthenticationCache”)
清除会话cookie的方法。这在各种web应用程序中都有使用,包括Outlook web App(可能还有许多其他应用程序)。问题是MS凭借其无穷的智慧决定,此命令应该清除所有开放站点的会话cookies(你能告诉我我有点痛苦吗,我花了几个月的时间才找到随机丢失的JSessionID的来源)
我们使用JSESSIONID以及另一个令牌来确保用户经过身份验证。JSESSIONID是安全的和httpOnly。除非JSESSIONID被第三方删除,否则这种方法工作得很好。因此,我的问题分为两部分:
谢谢大家。我相信以下任一选项都可以保护servlet会话不受
document.execCommand(“ClearAuthenticationCache”)
的影响:
您可以在您的web.xml文件中找到它。这样,您的JSESSIONID cookie就不再是会话cookie了!这会使您的web应用程序稍微不那么安全,因为浏览器关闭后cookie仍然存在
您可以完全放弃HTTP Cookie并将其删除。我自己从来没有实际配置过,但我想这比使用JSESSIONID cookies更安全。但是,在此配置中无法进行会话复制。非常感谢。第一个方案不可行,但第二个方案很可能解决我们的问题。我们有一个单独的处理SSL的安全设备,但它可以将头中的SSL ID传递给Tomcat,在这一点上,我们可以使用它作为JSESSIONID标识的备份。