1

好的,所以我们有一个遗留的 rails 2.3 系统,它为其用户使用 authlogic(由 Spree commerce 0.11 平台实现)

我们正在使用 Devise 迁移到新的定制 Rails 3.2 系统。我希望能够迁移现有用户,包括他们的密码。迁移用户详细信息很容易并且已经实现,密码会导致问题。

最初我希望我可以拉过现有的加密密码并愉快地继续。从最初的试验和研究来看,情况似乎并非如此。

建议的解决方案似乎是覆盖“valid_password?” 设计方法并首先手动检查 Authlogic Hashed 密码。

我真的不喜欢这个主意,但如果这是我所拥有的最好的方法,我会这样做。问题是,因为 Authlogic 是由 Spree 而不是我实现的,所以我不确定它使用的是什么哈希技术,也不知道如何重复它。其他人的示例不会从正确的密码中产生相同的哈希结果:((即此处将现有密码哈希转换为设计

我知道我有一个盐和每个用户的加密密码,而 Authlogic 似乎没有 Spree 设置的加密配置。如何找出如何复制 Authlogics 检查?还是有其他迁移密码的方法?

谢谢

4

2 回答 2

0

您可以使用 Devise 模拟 Authlogic 的加密机制。

http://ruby-doc.org/gems/docs/s/shingara-devise-0.4.3/Devise/Encryptors/AuthlogicSha512.html

于 2013-09-21T19:47:14.960 回答
0

最终在新项目上将设计切换回 Authlogic 以允许顺利迁移。这是一些工作,但似乎最好的做法是重新使用相同的技术来减少你的头痛。

当然,完成后,导入只是吸进用户表并配置相同的 Authlogic。

danerourssaves 的回答可能会奏效,但直到我们完成后我才看到它。另外,当我检查它时,它现在是一个死链接,但那是好几个月后我才看到的。

于 2014-06-09T11:23:28.347 回答