我们有一个财务应用程序,当用户在新标签页中打开链接并关闭上一个标签时,他的会话在新标签页中仍处于活动状态。这可能会产生跨站点请求伪造的问题,这对我们来说是个大问题。在实现使用onload或unload的东西(如此处所述http://www.liferay.com/community/forums/-/message_boards/message/2948770)时与我们的开发人员讨论这个问题时说,构建应用程序的方式(Java + faces + jboss + tomact)会产生问题,因为将记录使用情况每次他点击一个菜单。这是因为只要用户从一个页面导航到另一个页面,就会调用该函数。
如果不使用unload / onload javascript函数,有没有解决此问题的方法?
感谢
答案 0 :(得分:0)
如果不使用javascript,就无法检测到关闭页面的用户。
但是,如果您存储多个CSRF令牌而不是仅存储一个CSRF令牌(例如,最多10个),那么它将更加用户友好。当使用一个时,只有这一个无效,当需要一个新的时,最旧的一个被删除。 这可以确保人们可以在多个选项卡中工作,同时仍然具有CSRF保护。