2014-02-07 86 views
0

我有一個關於彈簧安全性的問題。對於我註銷標籤我指定無效會話假像下面...設置註銷無效會話爲假

<logout    
     invalidate-session="false" 
     delete-cookies="JSESSIONID" 
     success-handler-ref="customUrlLogoutSuccessHandler"/> 

我需要做的因事離奇與併發控制會話超時標籤這一點。除非我將invalidate-session設置爲false,否則我總會在註銷操作中獲得會話超時。

我的問題是因爲我已經把無效會話假我現在需要的會議程序無效的地方?我所做的是什麼影響?

我的應用似乎您註銷當你點擊退出按鈕,我不能得到它,除非我重新登錄,因此它看起來有可能無關。但我不禁想到我需要做更多的事情。我不想離開我的申請後門。

感謝

回答

1

的反響是

  • HttpSession中仍然存在,但不再有對它的引用。在會議結束之前它不會消失。這意味着你必須在內存
  • 其他對象如果您存儲在HttpSession中任何東西,別人設法取得他們仍然可以使用的會話標識。請注意,用戶信息將被清除出了會話,因此,如果您添加了會議
+0

這是一個偉大的答案,這將僅是相關的。謝謝。在我的自定義註銷處理程序中執行session.invalidate()的最佳方法是? – Richie

+0

使會話無效的最佳方式是在自定義註銷處理程序中使用session.invalidate()。我想我的問題是爲什麼在你的註銷處理程序中使會話失效的原因比使用Spring Security爲你做得更好? –