我需要以相同的方式手動加密密碼Symfony。在Symfony中手動加密用戶密碼php
$user->setPlainPassword($password);
$userManager->updateUser($user);
這是保存用戶密碼的應用程序代碼。但它顯然是加密的(不像方法說的那樣簡單)。
如何手動獲得給定密碼的相同結果?
EDIT1:
的問題是,我想在用戶控制器代碼手動驗證用戶。我有可讀的用戶名和密碼作爲參數。如果它們不存在於數據庫中,我想返回401。
我需要以相同的方式手動加密密碼Symfony。在Symfony中手動加密用戶密碼php
$user->setPlainPassword($password);
$userManager->updateUser($user);
這是保存用戶密碼的應用程序代碼。但它顯然是加密的(不像方法說的那樣簡單)。
如何手動獲得給定密碼的相同結果?
EDIT1:
的問題是,我想在用戶控制器代碼手動驗證用戶。我有可讀的用戶名和密碼作爲參數。如果它們不存在於數據庫中,我想返回401。
在你的控制器動作試試這個:
$encoder = $this->get('security.encoder_factory')->getEncoder($userClass);
$encodedPassword = $encoder->encodePassword($plainPassword);
什麼是ypou使用密碼? – zaph
https://symfony.com/doc/current/components/security/authentication.html#using-password-encoders – yceruto
@zaph我需要密碼才能將其與數據庫中的密碼進行比較。基本上我需要在php代碼中手動驗證用戶。 – eomeroff