Пользователь «web2vi» не существует на вашем сервере mysql.
См. http://dev.mysql.com/doc/refman/5.1/en/error-messages-server.html#error_er_no_such_user
Если этот пользователь существует, проверьте, на каких серверах он может получить доступ, хотя я бы подумал, что это будет другая ошибка (например, у вас может быть web2vi @ localhost, но вы получаете доступ к db как web2vi @% (во что угодно)
Опция 1 намного легче.
Я думаю, что вариант 2 (gbrandt) был бы отличным методом, если бы он сочетался с некоторой личной информацией, которая у вас уже есть для пользователя. то есть дата рождения.
Когда пользователь запрашивает новый пароль (сброс), вводя свой адрес электронной почты, он также должен ввести правильную дату рождения (или что-то еще), прежде чем пароль будет сброшен и новый будет отправлен пользователю по электронной почте.
Только те, кто хорошо его знает, могут раздражать его сбросом пароля! Это не может быть незнакомец или бот.
После 5 или 7 неверных комбинаций адреса электронной почты и даты рождения пользователь получает электронное письмо о том, что его пароль был запрошен на сброс, но это не удалось из-за неправильных учетных данных. Затем сброс пароля для этой учетной записи приостанавливается на 24 часа или любой желаемый период.
(если слишком много пользователей обратятся к веб-администратору по поводу этого письма, он поймет, что кто-то пытается злонамеренно получить информацию с вашего веб-сайта/приложения)
Что вы думаете, ребята?
Несколько важных проблем безопасности:
Для большего количества фона, контроль Руководство Хакеров веб-приложения. Это - превосходное чтение при создании моделей безопасной аутентификации.
РЕДАКТИРОВАНИЕ : Относительно вопроса в Вашем редактировании - я предложил бы:
"Электронное письмо запроса пароля было послано адресу, который Вы обеспечили. Если электронное письмо не прибывает вскоре, проверьте свою папку для спама. Если никакая электронная почта не прибывает, то никакая учетная запись не существует с электронной почтой, которую Вы предоставили".
существует компромисс, сделанный здесь между простотой использования и безопасностью. Необходимо ли сбалансировать это на основе контекста - действительно ли безопасность достаточно важна для Вас и Ваших пользователей для выравнивания по ширине этого неудобства?
Пошлите электронное письмо с новым паролем.
ВЫЗЫВАЮТ изменение пароля, когда они прибывают и вводят новый пароль.
Это гарантирует, что человек, который хотел пароль, будет единственным только вход в учетную запись.
, Если электронная почта является сниффинговой, кто-то мог бы войти в учетную запись (конечно), но реальная сторона сразу обнаружит это (как их пароль, который Вы просто отправили им, не работает).
Также отправляют подтверждения изменений пароля пользователям.
, Если кто-то получает новый пароль и затем электронное письмо, говоря "спасибо для изменения пароля", они собираются быть скорее озадаченными и будут говорить с администратором, если они не сделали этого.
Используя подтверждение адреса электронной почты / ссылка сброса пароля даст Вам лучшую безопасность. Если Вы озираетесь, это - то, как большинство веб-сайтов делает это, и люди довольно привыкли к этой проверке, таким образом, я рекомендовал бы использовать этот тип аутентификации.
Опция 1. не хорошая идея, поскольку обычно его становится легко отгадываемым другими. Персональная электронная почта Sarah Palin's (Yahoo, я думаю) была взломана таким образом третьим лицом.
другие варианты лучше, и предыдущие сообщения обрисовали в общих чертах деталь.