Список всех OU в LDAP с Rails

Я пытаюсь перечислить все организационные единицы (OU) из моего каталога LDAP. Я использую гем "devise_ldap_authenticable" для аутентификации своих пользователей. Вход LDAP работает нормально. Я пытаюсь получить все OU сейчас.

Я новичок в 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

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


person Swaathi Kakarla    schedule 25.02.2015    source источник


Ответы (1)


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

Я просто удалил фильтр и получил ou напрямую из записи.

ldap.search( :base => treebase, :attributes => attrs, :return_result => false ) do |entry|
  puts entry["ou"]
end
person Swaathi Kakarla    schedule 25.02.2015