Я получаю ldap. Ошибка SIZELIMIT_EXCEEDED, когда я выполняю этот код:
import ldap
url = 'ldap://<domain>:389'
binddn = 'cn=<username> readonly,cn=users,dc=tnc,dc=org'
password = '<password>'
conn = ldap.initialize(url)
conn.simple_bind_s(binddn,password)
base_dn = "ou=People,dc=tnc,dc=org"
filter = '(objectClass=*)'
attrs = ['sn']
conn.search_s( base_dn, ldap.SCOPE_SUBTREE, filter, attrs )
Где мое фактическое имя пользователя, мой фактический пароль, и фактический домен.
Я не понимаю, почему это. Кто-то может пролить некоторый свет?
Спасибо! :) Eric
Manual: http://www.python-ldap.org/doc/html/ldap.html
exception
ldap
.SIZELIMIT_EXCEEDED
An LDAP size limit was exceeded. This could be due to asizelimit
конфигурации на сервере LDAP.
Я думаю, что лучше всего ограничить sizelimit
в сообщении, которое вы получаете от сервера. Вы можете сделать это, установив атрибут LDAPObject.sizelimit
(устаревший) или используя параметр sizelimit при использовании search_ext()
Вы также должны убедиться, что ваша привязка действительно была успешной...
По умолчанию Active Directory возвращает не более 1000 результатов. Что немного раздражает, так это то, что вместо возврата 1000 со связанным кодом ошибки он, кажется, отправляет код ошибки без данных.
eDirectory запускается без значений по умолчанию и полностью настраивается как угодно.
Другие каталоги обрабатывают это иначе. (Отредактируйте и добавьте, если знаете).