Обязательно ли вызвать deleteCookies("JSESSIONID") после выхода из сайта?
В SecurityFilterChain у меня есть такая настройка:
.logout((logout) -> logout.logoutUrl("/logout")
.logoutSuccessUrl("/")
.invalidateHttpSession(true)
.deleteCookies("JSESSIONID"))
После выхода пользователя её сессия инвалидируется и удаляется куки под названием JSESSIONID.
Предположим, что операции deleteCookies("JSESSIONID") нет.
Насколько мне известно, инвалидация сессии предполагает маркировку этой сессии как невалидной (устаревшой), и, если пользователь заново попытается с этой же сессией получить доступ к сайту, то сервер узнает, что эта сессия невалидна и сгенерирует для пользователя другую и присвоет JSESSIONID новое значение сессии.
Вопрос: Почему же я в почти каждом примере вижу, что после инвалидации сессии следует удаление JSESSIONID? Я имею ввиду, обязательно ли это действие и почему везде делают так.
Ответы (1 шт):
Удалять куки "JSESSIONID" после инвалидации сессии рекомендуется из соображений безопасности. Несмотря на то, что инвалидация сессии помечает её как недействительную, куки с идентификатором сессии могут все еще быть доступны в браузере