2012-05-26 5 views
1

Я пытаюсь обновить свое приложение до Kohana 3.2, но у меня возникают проблемы, потому что все мои пользователи находятся в базе данных с паролями, зашифрованными Auth из Kohana 3.0. Похоже, что все иначе. Могу ли я настроить 3.2 для использования одного и того же шифрования?Могу ли я использовать модуль kohana 3.0 Auth с 3.2

ответ

2

Для этого нет простого способа. Kohana 3.2 использует hash_hmac() вместо hash + соль. Также есть изменения в рабочем процессе входа (например, Model_User в 3.2 не содержит логики входа). Вам нужно будет скопировать много кода с 3,0 до 3,2, я не думаю, что это хорошая идея.

Как насчет отправки писем с ссылкой на восстановление пароля? Старый пароль будет сломан, но пользователь может просто переопределить пароль. И не забудьте выйти из всех «запоминаемых» пользователей (где-то в вашем базовом контроллере, before() метод - идеальное место для него).

PS. Извините за мой английский, это не мой родной язык.

+0

Ваш английский отлично, не нужно извиняться;) – matino

+0

Совершенно понятно. Я решил снова вернуться к кохане 3.0. Не могу позволить себе срыв. Огромного позора нет, чтобы работать с 3.0 паролями в 3.2. Неважно. Однако, спасибо. –

+0

@koorb, модуль Auth в Kohana 3.2 позволяет определить хэш-метод (см. Config/config.php). В этом случае вы не могли бы изменить этот хэш-метод на то, что было использовано в Kohana 3.0? –