@dch3

Как Laravel «понимает» аутентифицирован пользователь или нет?

По каким признакам Laravel определяет, что тот или иной пользователь аутентифицирован (при использовании драйвера session), если Laravel стартует новую сессию для всех пользователей
как аутентифицированных, так и нет, а следовательно отправляет клиенту в куках sessid?

Т.е. сравнивать sessid из запроса клиента с имеющимися на сервере sessid, время жизни которых не вышло - нет смысла. Тогда какой такой таинственных признак аутентифицированости, если не наличие sessid?
  • Вопрос задан
  • 175 просмотров
Пригласить эксперта
Ответы на вопрос 4
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Кука, отправленная клиенту, это всего лишь идентификатор сессии. На сервере с этим идентификатором связано хранилище (по умолчанию - файл для каждой сессии). В этом хранилище содержится связанная с сессией информация, в том числе и статус аутентификации/авторизации пользователя.
Ответ написан
delphinpro
@delphinpro Куратор тега Laravel
frontend developer
В самой сессии хранится идентификатор залогиненного пользователя.

643d31c6beb10205163174.png

Для гостей этот идентификатор отсутствует
Ответ написан
Sanes
@Sanes
У сессии есть срок жизни. По-умолчанию 120 сек. бездействия. Смотрите .env конфиг.
Ответ написан
Комментировать
@dch3 Автор вопроса
Все верно, но загвоздка вот в чем.
Предположим:
Заходит не аутентиф. пользователь.
Ему отправляется responce с кукой с sessid, которая по умолчанию живет 120 мин.
Пользователь хочет войти в личный кабинет. Для этого ему нужно залогинится.
Он логинится, стартуется новая сессия и отправляется responce с кукой с новой sessid, которая тоже живет по умолчанию 120 мин.
Пользователь теперь может попасть с лич. каб. (все последующие запросы передают на сервер "правильную" ssesid).

Я не могу понять почему же не аутентиф. пользователя не может попасть в лич. кабинет, если его запрос ТАКЖЕ СОДЕРЖИТ ssesid, как и запрос аутентиф. пользователя. Возможно есть другой признак аутентифицированности? Или у ларавел есть отдельное хранилище только аутентифицированных ssesid?
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы