Первый совет - показать общую ошибку для обоих случаев неправильного входа: invalid username or password
.Таким образом, потенциальный злоумышленник не узнает, является ли имя пользователя действительным или нет.
Вы также можете сделать один запрос, соответствующий как имени пользователя, так и паролю.Возможно, вам потребуется больше информации о пользователе (для хранения в сеансе?), Поэтому было бы неплохо выбрать эти поля вместо пароля (например, id
, name
).
Относительно хешированияПароль хранится в базе данных, вы можете добавить SALT
для повышения безопасности.http://en.wikipedia.org/wiki/Salt_%28cryptography%29