PHP_Master
Хранитель порядка
- Регистрация
- 3 Фев 2008
- Сообщения
- 2.639
- Реакции
- 601
Совершенно верное замечание: хранить пароль в куках (даже хэшем) - это самоубийство, в этом нет никакой необходимости.
Follow along with the video below to see how to install our site as a web app on your home screen.
Примечание: This feature may not be available in some browsers.
Я делаю так..
Есть таблица с sesions_key, в ней поля hash_key и user_id,
при успешном логине или где поставили галочку запомнить меня, в табилицу пишется случайнос генерированый хеш и id пользователя, и этот хеш пишется ему в куки.
Далее если он заходит на сайт и у него нет сессии то проверяется куки, и если есть в куках хеш и он присутсвует в таблице, то пользователь автоматически авторизируется.
я бы не советовал хранитьв куках пароль, пускай даже в захешированном виде.
при краже кук, подбор пароля вопрос времени.
хотя двойной хеш в несколько тысяч раз лучше, чем одинарный, но все же это является недостаточно безопасным.
лучше генерировать случайный хеш при авторизации, и заносить его в БД для данного пользователя, и в куки ему
только хеш должен быть действительно случайным.
то есть не просто от времени, умноженного на случайное число(такой хеш довольно быстро выявляется, а затем подбирать хеши для доступа по кукам только дело техники)
хеш должен братся от строки случайной длины, содержащей в себе что угодно, но главное, чтобы одна такая строка не была похожа на другую
md5(логин + User_Agent + IP + uniqid).Можно пример кода для реализации такого случайного хеша??
Нагрузка будет только в случае:Мне кажеться это приведет к нагрузке на бд пусть и не значительной.
и это сложно назвать "нагрузкой", т.к. такое реализовано во многих больших движках и работают они нормально.кука есть => вытягиваешь из базы данные и сравниваешь с текущими:
если совпадают => открываешь юзеру сессию