2013-08-01 2 views
0

У меня есть приложение для рельсов 3.2, и я использую программу для аутентификации.Не удается войти с помощью пароля после сброса пароля

Недавно я отправился проверять функциональность сброса пароля и заметил, что, хотя пароль сброса работает (приложение позволяет вам сбрасывать пароль, а затем регистрирует вас), если я выхожу из приложения, а затем попытаюсь выполнить регистрацию я снова не могу войти. Приложение сообщает, что у меня есть недопустимое комманда электронной почты/пароля.

Я проверил, что БД обновляется, а поля reset_password_ [token/sent_at] обновляются корректно. Объект (объект пользователя) также обновляется в соответствии с меткой времени. НО, я больше не могу войти в систему с помощью пароля, который я только что использовал.

Я не уверен, что может быть причиной этого. Я видел еще одну связанную с этим one other related post об этой же проблеме, но на самом деле у нее нет ответа - только ключ: логика соли/перца.

Что позволит пользователю изменить свой пароль, но не войти снова? Есть идеи?

Текущий ENV: Rails 3.2 Разрабатывают 2.2.4 рубин 1.9.3

+0

Вы можете войти в систему со старым паролем? Извините, я чувствую, что хочу сказать, написать свой собственный auth. Для разработки требуется больше работы, чем того стоит. – Mohamad

+0

Исходный и новый пароль не работает. –

ответ

0

я понял проблему. Еще один разработчик моей команды добавил обратный вызов before_validation для объекта User, который генерировал случайный пароль для новых пользователей (из-за нового более простого процесса регистрации), и они забыли написать тест для обновления пароля. Поэтому, когда пароль был обновлен, вызывался обратный вызов before_validation и генерировался новый случайный пароль. Исправлено это и написано несколько тестов, и теперь он работает так, как должен.

+0

Я бы принял свой ответ, но не могу два дня. Я вернусь и сделаю это тогда ... –

Смежные вопросы