Интерфейс LDAP AD имеет довольно много «причуд», которые затрудняют его использование, чем может показаться на первый взгляд, и он значительно отстает от функций. Когда я работал с этим, я в основном имел дело с аутентификацией, но это, вероятно, то же самое, независимо от того, что вы делаете. Существует много странностей с точки зрения необходимости быть привязанным к определенному пользователю только для того, чтобы выполнять простой поиск, который обычный сервер LDAP позволил бы вам сделать анонимным.
Кроме того, по крайней мере год назад, когда я работал над этим, python-ldap был единственной реализацией Python LDAP, которая поддерживала где-либо близкий к полному набору функций, поскольку он построен на основе OpenLDAP, однако OpenLDAP довольно сложно собрать на Windows (и вообще), поэтому в большинстве сборок будет отсутствовать одна или несколько функций. Хотя вы не выполняете аутентификацию, отсутствие поддержки SASL / Kerberos (которая отсутствовала во время ее использования) может усложнить вам задачу.
Если у вас есть что-то, что работает, и вам нужно только запустить его в Windows, я бы очень рекомендовал придерживаться этого; использование AD через LDAP может превратиться в большой проект.