【发布时间】:2012-03-28 15:21:09
【问题描述】:
我有一个旧的用户数据库,其中包含以我不喜欢的方式散列的密码。 我希望在他们登录时将这些哈希更新为新的哈希形式 (bcrypt)。
我使用 FOSUserBundle 来管理用户并使用Elnur's bcrypt bundle 作为安全编码器。有没有一种简单的方法可以插入密码检查机制来添加这种算法:
if passwordHash is using old format
oldFormatHash := hash userGivenPassword in the old way
if oldFormatHash == passwordHash
login ok
update password in database with new hash format
else
login ko
else
use default
我考虑过扩展当前的安全编码器,但 isPasswordValid 方法没有要检查的帐户 id(或其规范名称),因此更新部分不可用。
【问题讨论】:
标签: php symfony fosuserbundle