Если вы действительно хотите, чтобы пользователь вошел в систему, вам следует сохранить уникальный маркер входа в cookie, а не имя пользователя или хешированный пароль.Когда ваш сервер получает токен входа в систему, вы можете сравнить его с базой данных постоянных пользователей, вошедших в систему, и посмотреть, какому пользователю соответствует этот токен.Сервер должен хранить токен входа в систему, имя пользователя, связанное с этим токеном, и время истечения срока действия.После использования токена его следует сделать недействительным, чтобы его нельзя было повторно использовать.
Это сводит к минимуму утечку информации клиенту и ограничивает возможности злоумышленника восстановить действительный пароль пользователя, если ему удастся украстьcookie (что относительно легко сделать).
Я настоятельно рекомендую вам также установить флаг безопасности для всех ваших файлов cookie, чтобы они отправлялись только через безопасные соединения, и убедиться, что у вас относительно короткий тайм-аут на постоянномлогины.Также рекомендуется провести дополнительные проверки авторизации, например, убедиться, что маркер входа связан с конкретным IP-адресом или отпечатком браузера, чтобы предотвратить случайные атаки.Это по-прежнему не может серьезно помешать решительному атакующему, но может отговорить некоторых скриптовых детишек.
Наконец, пожалуйста, примите во внимание совет @Craig T и запомните только имя пользователя, а не оставляйте пользователя вошедшим в систему. Постоянные входы в систему оченьОпасно, поэтому вы должны тщательно подумать о том, какую выгоду получают ваши пользователи от потенциальных затрат.
Хорошо, что вы правильно храните свои пароли в своей БД!Удивительно, сколько людей думают, что им не нужны соли.