我正在尝试实现 Authlogic。注册很好,它将所有必要的详细信息输入到我的数据库中。
..但是当我尝试登录时,它给了我错误:
1 个错误禁止保存此用户会话
以下字段存在问题:
密码无效
我的密码有效。我不确定发生了什么。有任何想法吗?
我正在尝试实现 Authlogic。注册很好,它将所有必要的详细信息输入到我的数据库中。
..但是当我尝试登录时,它给了我错误:
1 个错误禁止保存此用户会话
以下字段存在问题:
密码无效
我的密码有效。我不确定发生了什么。有任何想法吗?
我遇到了同样的问题,这是因为我正在从 Restful 身份验证迁移。问题是:Restful 身份验证在密码盐和加密密码上设置了 40 个字符的上限。authlogic 生成的哈希值大于此值。
class RemovePasswordSaltCap < ActiveRecord::Migration
def self.up
change_column :users, :password_salt, :string, :limit => nil
change_column :users, :crypted_password, :string, :limit => nil
end
end
在精美的手册中找到了这个答案。
在您的用户模型中,试试这个:
class User < ActiveRecord::Base
acts_as_authentic do |c|
c.validate_password_field = false
end
end
然后尝试再次登录。如果这有效,那么您将知道 authlogic 默认验证让您失望了。
你也可以试试
valid_password?(attempted_password, check_against_database = check_passwords_against_database?)
与控制台
如果升级到 authlogic,默认的 crypto_provider 已从 更改为Sha512
,SCrypt
因此可能是密码被破坏的情况。查看 authlogic
自述文件
我遇到了同样的错误,我的问题是我没有使用我之前用于 RESTful 身份验证的 REST_AUTH_SITE_KEY 键值。
我添加了键值,一切正常:)