当我们迁移到Devise(4.8.1(时,我真的希望允许目前使用Authlogic(6.4.1(的Rails应用程序(6.0.4.1(上的现有用户能够使用现有密码登录。
我看过的每一篇文章都有一个很好的解释,说明如果加密是SHA-512,如何做到这一点。在这些情况下,您可以修改config/initializers/devise.rb
并设置config.encryptor = :authlogic_sha512
(来源:https://gist.github.com/rpheath/8343779)。
然而,在某个时候,我们的应用程序通过执行以下操作从SHA-512转移到SCRYPT,以顺利过渡用户:
acts_as_authentic do |c|
c.transition_from_crypto_providers = [Authlogic::CryptoProviders::Sha512]
c.crypto_provider = Authlogic::CryptoProviders::SCrypt
end
我现在遇到的问题是,在这个用例中,我不知道如何正确地迁移到Devise。我知道我们的Users表(在Devise之前(有一个crypted_password
和password_salt
字段。SCRYPT似乎有更多的设置需要配置。
非常感谢您能提供的任何帮助。非常感谢。
Perhttps://github.com/heartcombo/devise/issues/3779,使用埃及设计。
这方面的常见解决方案似乎仍然是使用设计加密器和设计加密宝石,这意味着需要一些额外的移动部件。
是的,Devise通过扩展支持其他加密机,这就是方法-JoséValim