@Ivanushka255

Как сервер идентифицирует пользователя с помощью session id?

Мне не совсем понятно как это происходит. К примеру:

  1. Пользователь заходит на сайт - отправляет запрос. Сервер отправляет ответ вместе с уникальным session_id.
  2. Пользователь проходит авторизацию - вводит логин и пароль.
  3. Пользователь зашел в свой аккаунт. Там он отправляет разные запросы к серверу.


Как сервер понимает, что все запросы от одного клиента? Условно говоря, сервер записывает себе в каком-то временном хранилище (оно действует только на время сессии), что такой-то session_id это такой-то user_id? Используется ли ip адрес для идентификации пользователя?
  • Вопрос задан
  • 1384 просмотра
Решения вопроса 1
karabanov
@karabanov
Системный администратор
В cookie у пользователя вписан идентификатор сессии (фактически имя файла если сессии хранятся в файлах или имя ключа если сессии хранятся например в Redis или какой-то другой in-memory database).
Использовать ли IP для дополнительной идентификации или какой либо иное свойство клиента решает разработчик приложения.

Когда пользователь отправляет запрос на сервер, в заголовках запроса присутствуют и cookie с идентификатором сессии, так сервер и узнаёт кто прислал запрос.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы