3
소금을 사용하여 암호를 해독하면 로그인은 항상 "잘못된 자격 증명"을 반환합니다.소금 로그인을 사용하는 Symfony 2는 항상 잘못된 자격 증명을 반환합니다.
security:
encoders:
Aranox\UserBundle\Entity\User:
algorithm: sha512
내 사용자 개체에 소금을 만들어 사용 :
내가 security.yml의 인코딩을 설정public function load(ObjectManager $manager)
{
$encodeFactory = $this->container->get('security.encoder_factory');
$user = new User();
$user->setUsername('admin');
$user->setEmail('[email protected]');
$encoder = $encodeFactory->getEncoder($user);
$user->setPassword($encoder->encodePassword('admin', $user->getSalt()));
$user->setIsEnabled(true);
$manager->persist($user);
$manager->flush();
$this->addReference('user-admin', $user);
}
: 일부 testdata로를 만드는기구를 사용하여
I'am
...
/**
* @ORM\Column(type="string", length=255)
*/
private $password;
/**
* @ORM\Column(type="string", length=255)
*/
private $salt;
...
function __construct()
{
$this->groups = new ArrayCollection();
$this->salt = md5(uniqid(null, true));
...
소금을 만들지 않으면 ($ this-> salt = "") 모두 정상적으로 작동합니다.
어떻게 이런 일이 발생할 수 있습니까?
고맙지 만, 이미 255. – Zack
수레에게 감사드립니다. – Gianluca78