Что лучше всего сохранить в cookie, чтобы сохранить постоянное состояние входа в систему?
Я видел много сайтов (и обучающих программ для начинающих!), Которые просто хранят что-то вроде validUser = 1 в cookie. Я мог бы подделать это, и веб-сайт подумал бы, что я действительный пользователь.
Если имя пользователя хранится в cookie, я могу маскироваться под любого пользователя, отправляя cookie с его / ее именем пользователя в моем запросе.
Таким образом, если вы сохраняете имя пользователя и пароль в файле cookie, то я должен знать имя пользователя и пароль для входа в систему. По сути, пользователь входит в систему автоматически - это похоже на сохранение пароля его браузер. Вместо того, чтобы каждый раз вводить учетные данные в ящики, браузер автоматически отправляет их при каждом запросе страницы.
Но это все еще плохая идея? Хранение простого текстового пароля не является блестящей идеей, но именно так оно будет отправлено в данных POST при входе в систему. И, кроме того, его можно хранить в хэше. Но я все еще не чувствую себя комфортно с этим.
Возможно, файлы cookie не должны использоваться для хранения чего-либо, кроме идентификатора сеанса, а пользовательские данные хранятся на самом сервере. Возможно, это более безопасное место, если предположить, что сервер не является общим.
Глядя на какое-то программное обеспечение с открытым исходным кодом, такое как программное обеспечение для форумов, они используют более сложную систему, но я не мог точно понять, что она делает, просматривая код.
Что такое стандартная «лучшая практика»?