设计LDAP身份验证dn查找失败

时间:2013-10-21 09:25:40

标签: ruby-on-rails ruby ruby-on-rails-3 devise ldap

尝试使用devise_ldap_authenticatable gem设置Devise LDAP身份验证。 我在 devise.rb

中有此代码
config.ldap_logger = true
config.ldap_create_user = false
config.ldap_update_password = false
config.ldap_config = "#{Rails.root}/config/ldap.yml"
config.ldap_check_group_membership = false
config.ldap_check_attributes = false
config.ldap_use_admin_to_bind = false
config.ldap_ad_group_check = false
config.ldap_auth_username_builder =Proc.new() {|attribute, login, ldap|login+'@domain'}

在控制台中一切正常,我能够绑定并进行dn查找。似乎登录在rails应用程序中工作正常,因为设计重定向没有任何错误。然而,这是我得到的日志。看起来dn在应用程序中查找失败并且什么都不返回,并且用户也没有创建

LDAP dn lookup: sAMAccountName=username
LDAP search for login: sAMAccountName=username
LDAP search yielded 0 matches
Authorizing user username@domain
LDAP dn lookup: sAMAccountName=username
LDAP search for login: sAMAccountName=username
LDAP search yielded 0 matches

感谢任何帮助

2 个答案:

答案 0 :(得分:0)

您在哪里指定LDAP连接信息?

我假设在这个文件中: config.ldap_config = "#{Rails.root}/config/ldap.yml

可能应该将该信息添加到问题中,进行适当的补充(不要发布真实的IP,密码等)。

答案 1 :(得分:0)

如果您想创建您的用户模型。

config.ldap_crate_user = true

我和你有同样的麻烦。

   LDAP: LDAP dn lookup: CN=12345678
   LDAP: LDAP search for login: CN=12345678
   LDAP: LDAP search yielded 0 matches
   LDAP: Authorizing user 12345678@test.ad
   LDAP: LDAP dn lookup: CN=12345678
   LDAP: LDAP search for login: CN=12345678
   LDAP: LDAP search yielded 0 matches

身份验证成功但它没有获得任何属性。

你解决了这个问题吗?