Как Tomcat поддерживает целостность сеанса?

HttpServletRequestМетод getSession(логический) упоминает целостность сеанса. Как Tomcat поддерживает целостность сеанса? Какие правила он использует? Какой метод? Что происходит под капотом точно?

РЕДАКТИРОВАТЬ

Как и когда создается конкретный идентификатор сеанса? Tomcat полагается на IP-адрес и порт, например?

2 ответа

Решение

В Tomcat ManagerBase.generateSessionId() Метод отвечает за генерацию идентификатора сессии. Мне кажется, что идентификаторы сессии генерируются на основе случайных чисел. Вы можете сохранить IP-адрес клиента в сеансе и проверить его в своем веб-приложении, но, насколько мне известно, Tomcat этого не делает.

О целостности сессии: не могли бы вы определить это, пожалуйста? Об этом есть параграф в спецификации Java-сервлета версии 3.0, но это не так уж много:

7.1.4 Целостность сеанса

Веб-контейнеры должны поддерживать сеанс HTTP при обслуживании запросов HTTP от клиентов, которые не поддерживают использование файлов cookie. Чтобы выполнить это требование, веб-контейнеры обычно поддерживают механизм перезаписи URL.

В этом блоге приводятся некоторые подробности отслеживания сеансов с использованием файлов cookie с помощью Tomcat.

Другие вопросы по тегам