@EngineGP

Безопасно ли хранить id пользователя из бд в сессии?

Предыстория
Чуть больше года назад, был задан вопрос по поведению кэша на сайте и единственный ответ затронул момент хранения пароля в куки. Всё это время, тема хэширования, аутентификации, авторизации не давала мне покоя.
Ссылка на вопрос: Некорректное поведение кэша сайта?

К чему было решено прийти
Хэширование пароля через password_hash и проверка через password_verify

Проблематика
Сейчас после авторизации, пользователь аутентифицируется по связке
Логину + паролю + ключу аутентификации из куки
К слову, вся эта солянка перехэширована в MD5
Тем самым было принято решение перейти на систему сессий

Вопрос
Стоит ли использовать ID пользователя из базы данных при указании сессии или есть какие-то определённые стандарты на этот счёт?
$_SESSION['user_id'] = $user['id'];
В приоритете использовать длительные сессии, которые не слетают после 24-х минут или при закрытии браузера пользователем

На что ориентируюсь
Крупные компании по типу: ВК, Яндекса, Таймвеба и т.п.
Через консоль просмотрел у них сессию и заметил что они значительно длиннее стандартной PHPSESSID

Статьи с которыми ознакомился:
https://habr.com/ru/articles/665602/
https://habr.com/ru/articles/728072/
https://habr.com/ru/companies/avanpost/articles/480576/
  • Вопрос задан
  • 310 просмотров
Пригласить эксперта
Ответы на вопрос 2
Sanes
@Sanes
В сессии и так хранится ID. Иначе, как приложение узнает, с кем имеет дело?
Ответ написан
@v__V__v
Разработчик
Если вы сами не вываливаете содержимое сессии в ответы сервера на пользовательские запросы, то хранение в ней чего угодно абсолютно безопасно - данные хранятся на стороне сервера и пользователям не видны. Так что смело сохраняйте в ней все, что вам нужно в ней сохранить, сессии для этого и придуманы.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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