|
|
|
| Есть форма для авторизации пользователей. Авторизация проходит путём сверки логина и пароля с данными из БД.
Возникает вопрос как правильно обработать пароль чтобы защитить себя от SQL-инъекций и от перехвата его третьими лицами при submit'е формы.
Я делал так:
$password = mysql_real_escape_string(stripslashes($_POST['password'])));
|
Но потом, подумал, а что если у пользователя будет в начале пароля или в конце пробел, тогда stripslashes не катит. Может его вообще не стоит тут использовать? | |
|
|
|
|
|
|
|
для: Keyses
(14.07.2009 в 15:17)
| | при регистрации пользователя, занося в базу обработайте пароль функцией md5()
дальше сверяйте WHERE `password` = md5($_POST['password']) | |
|
|
|
|
|
|
|
для: sl1p
(14.07.2009 в 15:25)
| | да я собственно говоря так и делаю. Вот только прежде чем заносить пароль в
$_SESSION['admin_password'] = $password;
|
следует ли применять к нему md5, sha или можно передавать его в сессию в явном виде? | |
|
|
|
|
|
|
|
для: Keyses
(14.07.2009 в 16:12)
| | Зачем в сессии держать пароль? | |
|
|
|
|
|
|
|
для: Trianon
(14.07.2009 в 16:24)
| | понятно. | |
|
|
|
|
|
|
|
для: Keyses
(14.07.2009 в 15:17)
| | вообще не стоит. | |
|
|
|
|
|
|
|
для: Trianon
(14.07.2009 в 15:32)
| | А mysql_real_escape_string() оставить? | |
|
|
|
|
|
|
|
для: Keyses
(14.07.2009 в 16:13)
| | Это смотря что дальше. | |
|
|
|
|
|
|
|
для: Trianon
(14.07.2009 в 16:24)
| | Дальше делается запрос к БД где сверяются данные. | |
|
|
|
|
|
|
|
для: Keyses
(14.07.2009 в 17:44)
| | А в сессию помещать зачем? | |
|
|
|
|
|
|
|
для: Trianon
(14.07.2009 в 17:50)
| | Да дело в том что я только начал с сессиями разбираться, и взял готовый пример, там так было написано, думал надо. Теперь понял, что ошибся. | |
|
|
|