【发布时间】:2011-10-02 17:25:22
【问题描述】:
我已将 devise_ldap_authenticable gem 从 0.4.6 升级到最新版本 (0.4.9) 我以前工作的 LDAP 身份验证现在在我尝试进行身份验证时抛出以下异常:
Net::BER::BerError in Devise::SessionsController#create
不支持的对象类型:id=139
终端输出如下:
在 2011-07-11 11:58:45 开始为 127.0.0.1 发布 POST "/d/users/sign_in" +0100 由 Devise::SessionsController#create 作为 HTML 参数处理:{"utf8"=>"✓", "authenticity_token"=>"T+ttL/6YPK1A/HE4XRukI7SKHDTVr553/hOD+5UyYUk=", "user"=>{"username"=>"admin", "password"=>"[FILTERED]", "remember_me"=>"0"}, "commit"=>"登录"} SQL (0.4ms) SELECT 名称 FROM sqlite_master WHERE type = 'table' AND NOT name = 'sqlite_sequence'
用户负载 (1.3ms) SELECT "users".* FROM "users" WHERE "users"."username" = 'admin' LIMIT 1 LDAP:LDAP 搜索:uid=admin 在 659 毫秒内完成 500 内部服务器错误
Net::BER::BerError(不支持的对象类型:id=139):
如果我将 gem 降级回旧版本,它就会重新焕发生机(严格来说,我也必须在 devise.rb 中注释掉“config.sign_out_via = :delete”)
FWIW 我正在使用以下 gems/版本:
- 使用导轨 (3.0.9)
- 使用设计 (1.4.2)
- 使用 net-ldap (0.2.2)
- 使用 devise_ldap_authenticable (0.4.9)
如果有人知道发生了什么或者可以建议我可以查看什么来调试它,将不胜感激!
【问题讨论】:
标签: ruby-on-rails ldap devise