2013-07-22 79 views
0

每當我運行我的web應用程序並且進入默認頁面時,我的權限內會收到一個ROLE_ANONYMOUS用戶。但是,當我閒置時,會話超時導致我的invalid-session-url被觸發。無論如何,從會話超時中排除未經身份驗證的用戶?春季安全:當用戶未通過身份驗證時,會話失效

編輯:我發現最簡單的方法是設置一個InvalidSessionStrategy。問題是,我不知道如何去做。我並不需要創建自己的SessionManagementFilter實現。我想要的是控制應用程序如何處理invalid-session-url。誰能幫我嗎?

回答

0

即使對於未通過身份驗證的用戶,進行會話也是一種很好的做法。以重定向之前檢查身份驗證的方式實現無效會話URL。如果用戶未通過身份驗證,則重定向到會話空閒超時頁面。

+0

每當應用程序觸發invalid-session-url時,我就失去了我以前擁有的所有權限,我得到的所有權限都是ROLE_ANONYMOUS。 – mpmp

+0

@MiguelPortugal這就是應該發生的事情。如果用戶沒有通過身份驗證,他肯定沒有任何權限? – EJP

+0

是的,我知道,但是如果我曾經被認證 - 例如,我有一個名爲ROLE_USER的角色 - 它一旦到達無效會話URL就會消失。由於會話已被無效,因此我以前所有的角色都消失了,因爲Spring顯然清除了所有內容。 – mpmp

相關問題