2016-11-28 32 views
-1

我將我的spring-security.xml從3.2轉換爲4.0。如果我繼續3.2,則顯示JsessionId。當它來到4.0它不顯示JsessionId.With,我不能限制多個登錄與同一用戶(併發控制)。JsessionId在URL中沒有顯示?

這是我在彈簧security.xml文件配置: -

<security:session-management invalid-session-url="/login" session-fixation-protection="newSession" > 
    <security:concurrency-control max-sessions="1" error-if-maximum-exceeded="true" expired-url="/login"/> 
</security:session-management> 

我使用相同的代碼aboue兩個彈簧安全3.2和4.0。 我如何獲得JsessionId。

回答

2

在Spring 4.X中,url-rewriting被默認切換爲禁用,意味着JSESSIONID由cookie而不是URL來管理。

如果你需要回在短期內,你應該能夠設置:禁用-URL重寫=「假」

來源: http://docs.spring.io/spring-security/site/docs/4.0.x/reference/htmlsingle/#nsa-http-disable-url-rewriting

編輯 春天已禁用此功能故意作爲OWASP列爲「破壞的認證和會話管理」您應該考慮使用與春季安全會話控制功能相結合的Cookie: http://docs.spring.io/spring-security/site/docs/4.0.x/reference/htmlsingle/#ns-concurrent-sessions