Symfony UserPasswordEncoderInterface在每次调用时生成不同的值

问题描述

我在symfony中做了一个简单的命令,从控制台获取一个值并对其进行编码:

$io = new SymfonyStyle($input,$output);
$email = $input->getArgument('email');

/** @var User $user */
$user = $this->em->getRepository(User::class)->findOneBy([
    'email' => $email
]);

if (empty($user)) {
    $io->error("User with email '$email' not found");
    return 0;
}

$password = $io->askHidden('Password: ');
$hash = $this->encoder->encodePassword($user,$password);

$io->text("Generated hash: $hash");

安全配置片段:

security:
    encoders:
        App\Entity\User:
            algorithm: bcrypt

    providers:
        app_user_provider:
            entity:
                class: App\Entity\User
                property: email 

每个输入相同值的调用都可以生成不同的值吗? 如果对于相等的值,它生成不同的编码,那么如何验证访问的密码是否相同?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)