Как написать запрос LDAP для поиска в подразделении пользователей, у которых НЕТ адреса электронной почты?

Я знаю, как выполнить поиск в AD, чтобы найти всех пользователей с адресом электронной почты, но мне нужно включить синтаксис для запроса LDAP, вы можете помочь? Кроме того, как мне экспортировать этот список в Excel?


person Troy B.    schedule 17.07.2014    source источник
comment
Вы пробовали (!(mail=*))?   -  person user207421    schedule 17.07.2014


Ответы (1)


К сожалению, нет способа определить пустое или нулевое значение с помощью запроса LDAP — вам нужно будет запросить всех пользователей, а затем написать некоторую бизнес-логику, чтобы найти пользователей с пустыми значениями в свойстве mail.

Найти их все довольно просто, вы можете просто сделать:

(&(objectClass=user)(mail=*))

person X3074861X    schedule 17.07.2014
comment
Он не спрашивает о пустых/нулевых значениях атрибутов, которых в любом случае не существует в LDAP. (!(mail=*)) должен работать в соответствии с RFC 4511. - person user207421; 18.07.2014
comment
Я думаю, что резюме и описание вопроса можно интерпретировать по-разному, и, конечно же, это не требует отрицательного голосования. Кроме того, NULL, безусловно, существует в Active Directory и может быть установлен с помощью команды PutEx, поэтому, пожалуйста, излагайте свои факты прямо. Кроме того, я не уверен, насколько полезен ваш запрос, поскольку он возвращает каждую отдельную сущность, у которой нет свойства почты, указанного в DirectoryEntry. - person X3074861X; 18.07.2014