У меня возникли сложности с * персонажем в моем подразделении, когда я выполняю поиск. Группа подразделений называется Офисы по всему миру .
У меня есть циклический запрос, который возвращает всех пользователей, которые входят в данную группу. Поэтому я набираю имя группы, и это возвращает меня к группе. Затем я перебираю group.members.
Этими членами будут либо пользователь, либо другая группа. Так что, если это не пользователь, я бы снова просмотрел, чтобы проверить, является ли это группа. Члены группы всегда являются DistinguishedName, и это все, что мне нужно искать.
У меня есть текущий пользователь с DistinguishedName как
CN = Smith \, John a., OU = Портативный компьютер, OU = Пользователи, OU = Лондонский округ Колумбия, OU = Великобритания, OU = Офисы по всему миру , DC = Наш домен, DC = ЛОКАЛЬНЫЙ.
Я делаю DirectorySearcher, и мой фильтр
Searcher.Filter = "(&(&(objectClass=user)(!(objectClass=computers)))(distinguishedName=CN=Smith\, John a.,OU=Laptop,OU=Users,OU=London DC,OU=UK,OU=*Worldwide Offices*,DC=OurDomain,DC=LOCAL))
Как вы видите, я думаю, что тот факт, что у нашего OU есть * в заголовке, является причиной, по которой он не находит пользователя. Кажется, работает любая другая OU, в которой нет *. Вот почему я считаю, что * это проблема.
Кто-нибудь знает, как обойти эту проблему, кроме переименования OU?