Rae*_*kye 4 bcrypt zend-auth zend-framework2
谷歌没有太多的解决方案(类似的问题,但没有答案).
由于bcrypt每次都会生成一个新哈希,因此身份验证失败.我查看了代码(也许是自己扩展类),但它非常混乱(更喜欢本机解决方案).我该怎么$bcrpt->verify()用$identity->isValid()?
编辑:目前,我已经将认证DbTable类子类化,并且它正在运行,但我非常怀疑它是否已经过优化/"完全正确".仍在寻找"优雅"的解决方案.
B.A*_*lin 15
您可以使用:
Zend\Authentication\Adapter\DbTable\CallbackCheckAdapter
Run Code Online (Sandbox Code Playgroud)
像这样 :
use Zend\Authentication\Adapter\DbTable\CallbackCheckAdapter as AuthAdapter;
use Zend\Crypt\Password\Bcrypt;
$credentialValidationCallback = function($dbCredential, $requestCredential) {
return (new Bcrypt())->verify($requestCredential, $dbCredential);
};
$authAdapter = new AuthAdapter($dbAdapter, 'user', 'login', 'password', $credentialValidationCallback);
// ...
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3807 次 |
| 最近记录: |