2012-06-15 6 views
1

У меня есть приложение Symfony 1.4, использующее sfDoctrineGuardPlugin для пользователей.Symfony sfDoctrineGuard Шифрование пароля

Мне нужно переместить этих пользователей в новую систему. После прохождения документации и кода у меня возникли проблемы с пониманием того, как Symfony хранит/проверяет пароли.

Я хочу, чтобы моя новая система (CakePHP) хранила и проверяла пароли так же, как и старый, так что никто не должен менять свой пароль.

Как бы я это сделал? Может ли кто-нибудь опубликовать простой пример?

+0

Ядро проверки находится в PluginsfGuardUser.class.php; вы можете найти нечетную полезную деталь в [этот старый мой вопрос] (http://stackoverflow.com/questions/4935364/migrating-existing-users-and-passwords-to-new-symfony-sfdoctrineguard-user-syste) , что касается миграции * на * Symfony. Подход, который я принял, состоял в том, чтобы использовать стандартный плагин в новой системе, но добавить пользовательский код для переноса пользовательских паролей из старой системы при входе в систему - возможно, стоит иметь в виду подход. Если вы перемещаетесь при входе в систему, у вас есть доступ к незашифрованному паролю, что полезно. –

ответ

3

Я думаю, что вам просто нужно dig into the cod e, когда sfGuard сгенерирует пароль (setPassword) и когда sfGuard проверяет пароль (checkPasswordByGuard).

Они используют алгоритм (по умолчанию sha1) для хранения соляного пароля.

+0

Это те функции, которые я искал, спасибо! –

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