Я пытаюсь использовать Get-ADUser, чтобы найти конкретный расширенный атрибут, имя которого я не знаю. В моей организации у каждого пользователя AD должно быть поле атрибута, которое указывает, обучались ли они по определенной теме, но я не знаю, как именно называется это поле. Поэтому я надеюсь найти атрибуты, которые могут иметь определенные строки в названии, например «titleIX».
Приведенный ниже код не работает, как я собираюсь (очевидно), но я надеюсь, что он иллюстрирует то, что я ищу:
Get-ADUser -filter 'name -like "johndoe"' -properties * | Where-Object {$_.propertyname -like "*titleIX*"}
В этом примере мы надеемся, что результат будет выглядеть примерно так:
trngTitleIXDone: Yes
В этот момент я бы знал, что это поле называется «trngTitleIXDone», и мог бы продолжить свой веселый путь, используя его для реальных отчетов, которые я хочу создать.
Я понимаю, что мне могут понадобиться дополнительные конвейерные команды для достижения требуемой фильтрации, а не просто полный список атрибутов, связанных с объектом, который имеет атрибут с именем, соответствующим запросу.
Спасибо и, пожалуйста, дайте мне знать, если мне нужно лучше объяснить себя.
== Мэтт
P.S. Дополнительный контекст по запросу:
В: Вы не можете спросить своего администратора или найти его в ADUC?
A: Организация огромна и имеет множество пользовательских атрибутов, которые не документированы (так, как я могу получить к ним доступ). Получение этой информации или даже поиск нужного человека потребует гораздо больше времени, чем поиск самой. И я хотел бы знать этот навык на случай, если он снова появится, чтобы я мог избежать задержки в следующий раз.
Что касается ADUC, я не знаю точно логику, когда возвращается атрибут или нет, но я понимаю, что атрибуты, которые я ищу, имеют некую классификацию, которая препятствует их возвращению если вы специально не нацелены на них по имени. Простое использование properties *
не возвращает того, что я ищу, и атрибуты, перечисленные в ADUC, более или менее совпадают с набором данных.