Я создал веб-приложение, использующее приглашение входа Spring Security (3.2). Я запускаю приложение в Tomcat 7. Я использую диспетчер Tomcat для мониторинга сеансов. Это приложение Vaadin, использующее сервлет Vaadin. Нет страниц JSP.
Теперь...
Является ли это предполагаемым поведением (предотвращение какой-либо атаки фиксации сеанса) или я просто настроил что-то неправильно?
Краткая версия заключается в том, что процессы входа в систему, использующие страницу входа, должны создавать сеанс для хранения целевой страницы.
Более длинная версия заключается в том, что процесс входа в систему (при условии успешной аутентификации) будет что-то вроде этих строк:
Без сеанса контейнер не имеет возможности отслеживать, какие (из потенциально многих) страниц требуют проверки подлинности, которые запрашивал пользователь, и поэтому не могут перенаправить их на запрашиваемую страницу после завершения проверки.
Сессия напрямую не связана с весной-безопасностью, хотя весна-безопасность может ее создать. Сеанс создается контейнером сервлетов на первом этапе getSession(). Может быть Spring-security или любой другой код, который выполняется во время этого первого запроса и вызывает getSession().
Тем не менее, если это вас беспокоит, Spring-security может быть настроен на замену первой сессии "свежей" при аутентификации. Больше информации здесь.
Надеюсь, я помог вам прояснить ситуацию.