如何在将项目转换为Laravel后使用旧密码

时间:2015-11-20 11:01:21

标签: php laravel hash passwords

我将我的项目转换为Laravel。我有一个存储密码哈希值的现有数据。如果我将此项目上传到我的远程服务器。我的客户无法登录。他们必须使用忘记密码部分。

但这对我的客户来说并不好。

我想像在Laravel中一样使用bcrypt进行密码散列。但在我的旧系统中。我用了不同的方法。为了完全兼容,我不想在Laravel的默认值中更改任何内容。

可能是我可以在数据库中创建不同的列。我可以存储一个月的新哈希值。对于活跃用户,我可以获取新的哈希值,我可以转换我的系统。

但这些都不是好的解决方案。你有什么想法吗?

1 个答案:

答案 0 :(得分:5)

我解决这个问题的方法是创建一个旧哈希表。然后,当用户登录时,我检查他们是否仍有旧哈希。如果他们这样做,我尝试使用旧的登录算法,如果成功,我使用他们提供的密码来设置新的哈希并删除旧的哈希。如果他们没有旧的哈希,我只需使用新算法登录。