security.yml:Не может войти с Symfony2
providers:
main:
entity: { class: Tg\UserBundle\Entity\User, property: username }
encoders:
Tg\UserBundle\Entity\User: sha512
В моем менеджере во время регистрации я установил пароль:
$encoder = $this->encoder->getEncoder($user);
$raw = $user->getPassword();
$salt = $user->getSalt();
$encoded = $encoder->encodePassword($raw, $salt);
if (!$encoder->isPasswordValid($encoded, $raw, $salt)) {
throw new \Exception('Password incorrectly encoded during user registration', 428);
} else {
$user->setPassword($encoded);
}
В моем пользователе сущности У меня есть основная соль по конструкции:
$this->salt = md5(uniqid(null, true));
Я получаю сообщение об ошибке на шаблоне входа по умолчанию:
Представленный пароль недействителен.
Wtf?
Это не решило проблему, но использование вашей соли заставило меня изменить длину моей колонны соли, и, увы, была ошибка, длина пароля была слишком мала. Спасибо, что привели меня к этой проблеме! – Tjorriemorrie