Zend framework2 ZfcUser和现有用户帐户密码
我将ZfcUser与BjyAuthorize一起使用,一切正常。在我工作的项目中,我有一个旧数据库,其中包含使用MySQL函数“password”加密的用户帐户和密码,我的问题是,是否可以将密码重新转换为ZfcUser密码类型,而不向所有用户发送信息?我的目标是让老用户用他的旧密码登录到新系统,然后脚本以某种方式将此密码转换为ZfcUser标准。好的,我找到了解决方案,首先我在php中找到了MySQL密码函数:Zend framework2 ZfcUser和现有用户帐户密码,zend-framework2,Zend Framework2,我将ZfcUser与BjyAuthorize一起使用,一切正常。在我工作的项目中,我有一个旧数据库,其中包含使用MySQL函数“password”加密的用户帐户和密码,我的问题是,是否可以将密码重新转换为ZfcUser密码类型,而不向所有用户发送信息?我的目标是让老用户用他的旧密码登录到新系统,然后脚本以某种方式将此密码转换为ZfcUser标准。好的,我找到了解决方案,首先我在php中找到了MySQL密码函数: function mysql_password_hash($input, $hex
function mysql_password_hash($input, $hex = true)
{
$sha1_stage1 = sha1($input, true);
$output = sha1($sha1_stage1, !$hex);
return strtoupper('*'.$output);
}
然后在ZfcUser\Authentication\Adapter\Db.php中,我添加了一个计数器$bcrypt=new bcrypt()代码>这两行:
if(mysql_password_hash($credential) === $userObject->getPassword())
$this->updateUserPasswordHash($userObject, $credential, $bcrypt);
现在,在登录过程中,旧的MySQL密码被重新设置为新的Bcrypt密码。也许它会帮助别人