2015-02-25 3 views
1

Я пытаюсь перечислить все организационные единицы (OU) из моего каталога LDAP. Я использую «devise_ldap_authenticatable» gem для аутентификации моих пользователей. Знак LDAP работает нормально. Я пытаюсь получить все ОО сейчас.Список всех OU в LDAP с Rails

Я новичок в LDAP, пожалуйста, дайте мне знать, если мой поисковый запрос здесь не так.

ldap = Net::LDAP.new 
ldap.host = "192.168.0.100" 
ldap.port = 389 
ldap.auth "cn=admin,dc=company,dc=com", "password" 

treebase = "dc=company,dc=com" 
filter = Net::LDAP::Filter.eq("objectClass=organizationalUnit","company.com") 
attrs = ["*"] 

ldap.search(:base => treebase, :filter => filter, :attributes => attrs, :return_result => false) do |entry| 
    puts entry 
end 

Когда я побежал, я ничего не получил. У меня два подразделения в моем LDAP, DevOps и Development. В каждой из них 5 тестовых пользователей.

ответ

1

Я не уверен, что это правильный способ сделать это, но он получил меня, что я хотел, и я доволен этим.

Я просто удалил фильтр и сразу же извлек из входа.

ldap.search(:base => treebase, :attributes => attrs, :return_result => false) do |entry| 
    puts entry["ou"] 
end 
Смежные вопросы