Gem devise 生成的密码可逆吗?

cdredfox · 2012年10月22日 · 最后由 hhuai 回复于 2012年10月22日 · 3316 次阅读

想请教一下各位大牛,devise 生成的密码可逆吗? 主要原因是我之前有个站,有一些注册用户,现在需要迁移到另一个站上去,但是两者采用的密码加密方式是不一样的,怕以想做数据迁移,但是不知道这个密码是否可逆呢?重新加密。谢谢各位了。

肯定不可逆

#2 楼 @lidashuang 即便是不可逆的。你做一个登录的时候密码迁移模块就行了。

用户在新站上的第一次登录的时候,密码校验用老式加密方式,把接收过来的明码用新的加密方式加密处理过后做存储,第二次登录的时候就采用新的加密方式了。

@zfjoy520 因为一些特殊原因,在新站上采用这种方式只是最后一个方案,如果能够进行数据迁移就最好了,目前主要是想进行数据迁移。

呵呵,这不复杂啊。你在新站上的 users 表里面加一个旧密码字段就是了。新密码置空。把之前的密码照搬过来。用户登录一个自动填充一个新密码就是了。

将旧系统的密码导入数据库,用户在新系统第一次登陆的时候先用旧密码加密方式判断一下,进行密码迁移: https://github.com/plataformatec/devise/wiki/How-To:-Migration-legacy-database

#6 楼 @quakewang 这个办法不错哦,

需要 登录 后方可回复, 如果你还没有账号请 注册新账号