- Как получить список групп и их пользователей в Powershell
- Примеры с фильтром Get-ADGroup
- Получить список пользователей группы в Powershell Get-ADGroup
- Получение групп пользователей в Powershell
- Как получить список пользователей AD с помощью Powershell с Get-ADUser
- Найдите и отфильтруйте список пользователей AD в Powershell Get-ADUser -Filter
- Получение списка пользователей Active Directory в Powershell Get-User из нескольких организационных единиц
- Загрузить пользователей из AD в Excel с Powershell
- Получить почту AD User Email в Powershell
- Получить список пользователей, срок действия пароля которых истек dateexpired в Powershell
- Get-ADUser
- Синтаксис
- Описание
- Примеры
- Пример 1: Получить все пользователи в контейнере
- Пример 2. Получение отфильтрованного списка пользователей
- Пример 3: Получить все свойства для определенного пользователя
- Пример 4. Получение определенного пользователя
- Пример 5: Получить все включенные учетные записи пользователей
- Параметры
- Записи
- Outputs
Как получить список групп и их пользователей в Powershell
Get-ADGroup — это команда, которая возвращает список групп в Powershell . Если вы хотите составить список пользователей в группе, есть еще одна команда Get-ADGroupMember, которую мы также рассмотрим. Эти подпрограммы имеют требуемый ключ. Например, вот как мы отображаем полный список групп AD в Powershell:
Навигационное сообщение
Примеры с фильтром Get-ADGroup
Если мы хотим отобразить, например, список групп безопасности, мы можем сделать это так:
GroupCategory — это свойство, и eq проверяет точное совпадение. Здесь обсуждались операторы сравнения Powershell.
Есть много свойств, которые мы хотели бы отобразить или сравнить, и чтобы отобразить их все, сделайте следующее:
Вы можете сравнить несколько значений. Если я хочу, чтобы группы были созданы 20 дней назад и их тип был Distribution (группа рассылки), я бы сделал так:
Другие примеры будут рассмотрены позже.
Получить список пользователей группы в Powershell Get-ADGroup
Мы можем искать данные по группе, просто введя имя. В моем случае я ищу группу, название которой заканчивается на маркетинг:
- Свойства: расширяет список стандартных свойств. В нашем случае указываем, что нужно получить список пользователей из группы в Powershell
- Select: в этой версии команда выводит список всех свойств, а не только стандартный список
У нас есть другой способ, как получить список члены группы: через Get-ADGroupMember. Принцип тот же, что и в предыдущих версиях:
Разница между этими двумя вариантами в том, что в первом случае мы получаем краткую информацию о пользователях, а во втором более подробный список.
Если вы хотите получить пользователя, вы можете сделать это, но минус для этой опции заключается в том, что мы должны указать точное совпадение имени:
Описание на сайте Microsoft говорит, что он показывает ошибку только в том случае, если подпрограмма возвращает более одной группы (в случае подстановочных знаков), но я никогда не мог этого сделать. Мы можем использовать SID и GUID вместо имени.
Получение групп пользователей в Powershell
Противоположная ситуация, когда мы хотим знать, в каких группах состоит наш пользователь. Для этого тоже есть несколько вариантов. Во-первых, с помощью команды get users со свойством MemberOf:
Если мы хотим узнать подробную информацию о группе, сделайте следующее:
Мы можно найти группы от таких пользователей, как tato:
Недостаток этого метода в том, что он занимает больше времени. Это может быть незаметно для 1000 пользователей, но для 50 000 это заметно.
Источник
Как получить список пользователей AD с помощью Powershell с Get-ADUser
01.08.2019
Команда Get-ADUser возвращает список пользователей AD в Powershell. На самом деле процедура не сильно отличается от тех, что мы видели ранее с префиксом «Get-AD».
Для работы с командой нам нужен модуль Powershell Active Directory.
Это вернет всех пользователей AD:
Если нам нужно поиск по имени, сделайте так:
Где adminis — имя вашей учетной записи. Звездочки позволяют искать вхождение, в котором справа и слева может быть несколько символов.
Чтобы получить информацию об одной учетной записи AD, существует идентификационный ключ:
Кроме того, у нас есть другой ключ свойства, который показывает другие свойства объекта пользователя:
Если мы хотим Get-ADUser в OU, тогда есть другой ключ для этого вы может выполнять поиск в подразделениях и контейнерах. В моем случае я ищу в OU Moscow и domain.local:
Если вам нужно искать внутри контейнера, используйте CN. Ниже приведены некоторые примеры OU.
Навигационное сообщение
Найдите и отфильтруйте список пользователей AD в Powershell Get-ADUser -Filter
Мы можем фильтровать по или по нескольким свойствам. Чтобы увидеть все свойства, которые вам нужно сделать:
В области 1 будут выделены все имена, по которым мы можем фильтровать. В области 2 — тип данных, с которыми мы можем сравнивать. Эти. если тип данных области 2 является строкой, то сравнение с числом (int) — плохая идея. Сразу стоит отметить, что мы не можем использовать свойства, которые получаем благодаря ключу Properties в Фильтре.
Примеры с Get-Member мы уже рассматривали ранее.
Например, Таким образом мы можем получить всех пользователей, у которых есть город Москва:
Теперь мы находим всех пользователей, которые ввели неправильный пароль более одного раза, в том числе:
Потому что BadLogonCount свойство ключа свойства, его нужно проверить с помощью канала Where.
Еще один пример, но теперь нам нужно найти пользователя, имя которого содержит 0001 и является активным:
Получение списка пользователей Active Directory в Powershell Get-User из нескольких организационных единиц
Команда не имеет встроенных средств для одновременного поиска нескольких объектов. Мы можем объявить переменную, содержащую этот список, а затем передать ее через цикл. В моем примере с использованием пользователей-контейнеров и OU «Москва»:
Если бы у вас была OU «Екатеринбург», в которой находится OU Marketing, стоило бы написать так:
Загрузить пользователей из AD в Excel с Powershell
Экспорт и загрузка могут выполняться во многих форматах, но есть специальный формат CSV для экспорта в Excel. Чтобы сделать загрузку, делаем следующее:
Если мы хотим загружать только определенные свойства, то в поле SELECT -Property нам нужно указать:
Получить почту AD User Email в Powershell
Требуемое свойство можно получить с помощью соответствующей клавиши Свойства. Вот как я получаю почту от конкретного администратора:
Загружать в CSV имена только тех пользователей, у которых нет почты:
Получить список пользователей, срок действия пароля которых истек dateexpired в Powershell
Чтобы отобразить все свойства, связанные с паролями, запустите:
И затем используйте это свойство для фильтрации пользователей:
Источник
Get-ADUser
Получает один или несколько пользователей из Active Directory.
Синтаксис
Описание
Подпрограмма Get-ADUser извлекает конкретный пользовательский объект или выполняет поиск для получения нескольких пользовательских объектов
Параметр Identity указывает пользователя Active Directory, которого необходимо получить. Вы можете идентифицировать пользователя по его отличительному имени (DN), GUID, идентификатору безопасности (SID) или имени учетной записи диспетчера учетных записей безопасности (SAM). Вы также можете установить в качестве параметра переменную объекта пользователя, например $, или передать объект пользователя по каналу в параметр Identity .
Чтобы найти и получить более одного пользователя, используйте Параметры Фильтр или LDAPFilter . Параметр Фильтр использует язык выражений PowerShell для записи строк запроса для Active Directory. Синтаксис языка выражений PowerShell обеспечивает полную поддержку преобразования типов для типов значений, принимаемых параметром Filter . Для получения дополнительных сведений о синтаксисе параметра Filter введите Get-Help about_ActiveDirectory_Filter . Если у вас есть существующие строки запроса протокола облегченного доступа к каталогам (LDAP), вы можете использовать параметр LDAPFilter .
Эта процедура извлекает набор свойств объекта пользователя по умолчанию. Чтобы получить дополнительные свойства, используйте параметр Properties . Для получения дополнительной информации о том, как указать свойства объекта пользователя, см. Описание параметра Свойства
Примеры
Пример 1: Получить все пользователи в контейнере
Эта команда помещает всех пользователей в контейнер OU=Finance,OU=UserAccounts,DC=FABRIKAM,DC=COM.
Пример 2. Получение отфильтрованного списка пользователей
Эта команда получит всех пользователей, чье имя заканчивается на SvcAccount.
Пример 3: Получить все свойства для определенного пользователя
Эта команда получит все свойства для пользователя с Имя учетной записи SAM ChewDavid .
Пример 4. Получение определенного пользователя
Эта команда получает пользователя с именем ChewDavid в экземпляре служб Active Directory облегченного доступа к каталогам (AD LDS).
Пример 5: Получить все включенные учетные записи пользователей
Эта команда получает все включенные учетные записи пользователей в Active Directory с помощью фильтра LDAP.
Параметры
Указывает используемый метод аутентификации. Допустимые значения для этого параметра:
Метод проверки подлинности по умолчанию — Negotiate.
Для основного метода проверки подлинности требуется соединение Secure Sockets Layer (SSL).
Тип: | ADAuthType |
Допустимые значения: | Согласование, Базовый |
Позиция: | Именованный |
По умолчанию: | Нет |
Принять ввод канала: | False |
Принимать подстановочные знаки: | False |
Указывает учетные данные учетной записи пользователя для привыкнуть к выполнение этой задачи. Учетные данные по умолчанию — это учетные данные текущего пользователя, вошедшего в систему, если только командлет не запускается из модуля поставщика Active Directory PowerShell. Если командлет запускается из такого подразделения поставщика, по умолчанию используется учетная запись, связанная с этим устройством.
Чтобы указать этот параметр, можно указать имя пользователя, например User1 или Domain01\User01, либо указать объект PSCredential . Если вы укажете имя пользователя для этого параметра, подпрограмма запросит пароль.
Вы также можете создать объект PSCredential с помощью сценария или с помощью Get-Credential рутина. Затем вы можете установить параметр Credential для объекта PSCredential .
Если учетные данные выполнения действия не имеют разрешения на уровне каталога для выполнения задачи, Active Directory PowerShell вернет ошибку завершения.
Тип: | PSCredential |
Должность: | Имя |
По умолчанию: | Нет |
Принять ввод канала: | Ложь |
Принимать подстановочные знаки: | False |
Указывает строку запроса, которая извлекает объекты из Active Directory. В этой строке используется синтаксис языка выражений PowerShell. Синтаксис языка выражений PowerShell обеспечивает расширенную поддержку преобразования типов для типов значений, принимаемых параметром Filter . Синтаксис использует представление v порядок, означающий, что оператор помещается между операндом и значением. Для получения дополнительных сведений о параметре Filter введите Get-Help about_ActiveDirectory_Filter .
В следующем синтаксисе используется формат Бэкуса-Наура, чтобы показать, как использовать язык выражений PowerShell для этого параметра.
::= «-equivalent»
Указывает объект пользователя Active Directory, предоставляя одно из следующих значений свойства. Идентификатор в скобках — это отображаемое имя атрибута LDAP. Допустимые значения для этого параметра:
- Отличительное имя
- GUID (objectGUID)
- Идентификатор безопасности (objectSid)
- Имя учетной записи SAM (sAMAccountName)
Подпрограмма выполняет поиск контекста или раздела именования по умолчанию, чтобы найти объект. Если будут найдены два или более объектов, подпрограмма вернет непрерывающую ошибку.
Этот параметр также может получить этот объект через канал, или вы можете установить этот параметр для экземпляра объекта.
Тип: | Пользователь ADU |
Позиция: | 0 | По умолчанию: | Нет |
Принять ввод канала: | True |
Принять подстановочные знаки: | False |
Указывает строку запроса LDAP, используемую для фильтрации объектов Active Directory. Вы можете использовать этот параметр для запуска существующих запросов LDAP. Синтаксис параметра Фильтр поддерживает те же функции, что и синтаксис LDAP. Для получения дополнительной информации см. описание параметра Filter или введите Get-Help about_ActiveDirectory_Filter .
Тип: | String | Позиция: | Именованный |
По умолчанию: | Нет |
Принять ввод канала: | False |
Принимать подстановочные знаки: | False |
Задает имя, отличное от раздела Active Directory. Отличительное имя должно быть одним из контекстов именования на текущем сервере каталогов. Подпрограмма ищет в этом разделе объект, определенный параметром Identity .
Во многих случаях используется значение по умолчанию параметра Partition , если значение не указано. . .ценность. Ниже приведены правила установки значения по умолчанию. Обратите внимание, что правила, перечисленные первыми, оцениваются первыми, и когда можно указать значение по умолчанию, никакие другие правила не оцениваются.
В средах AD DS значение по умолчанию устанавливается для раздела в следующих случаях:
- Если для параметра Идентификация задано различающееся имя, раздел по умолчанию автоматически создается из этого отличительного имени. .
- Если вы запускаете командлеты с диска поставщика Active Directory, раздел по умолчанию автоматически создается из текущий путь на диске.
- Если ничего из вышеперечисленного не применимо, раздел по умолчанию устанавливается на раздел по умолчанию или контекст именования целевого домена.
В средах AD LDS значение по умолчанию для раздела устанавливается в следующих случаях:
- Если параметр Идентификатор установлен как отличительное имя, значение по умолчанию Раздел автоматически создается из этого отличительного имени.
- Если вы запускаете командлеты с диска поставщика Active Directory, раздел по умолчанию автоматически создается из текущего пути на диске.
- Если целевой экземпляр AD LDS имеет контекст именования по умолчанию, значение по умолчанию Раздел устанавливается в контекст именования по умолчанию. Чтобы указать контекст именования по умолчанию для среды AD LDS, установите свойство msDS-defaultNamingContext объекта агента Active Directory ( nTDSDSA ) для экземпляра AD LDS.
- Если ничего из вышеперечисленного не применимо, параметр Секция не будет иметь значения по умолчанию.
Тип: | Строка |
Позиция: | Именованный |
По умолчанию: | Нет |
Принять ввод канала: | False |
Принимать подстановочные знаки: | False |
Указывает свойства выходного объекта, которые необходимо получить с сервера. Используйте этот параметр для получения свойств, не включенных в набор по умолчанию.
Укажите свойства этого параметра в виде списка имен, разделенных запятыми. Чтобы перечислить все атрибуты, установленные для объекта, введите * (звездочка).
Чтобы указать одно расширенное свойство, используйте имя свойства. Для свойств, не являющихся свойствами по умолчанию или расширенными, необходимо указать отображаемое имя атрибута LDAP.
Чтобы получить и отобразить свойства объекта, можно использовать связанный с ним командлет Get-* и передать выходные данные в командлет Get-Member .
Тип: | String [ ] |
Псевдоним: | Свойство |
Позиция: | Именованный |
По умолчанию: | Нет |
Принять ввод из канала: | Ложь |
Принять подстановочные знаки: | Ложь |
Указывает количество объектов, которые должны быть включены на страницу для запроса доменных служб Active Directory.
По умолчанию — 256 объектов на страницу.
Тип: | Int32 |
Позиция: | Именованный |
По умолчанию: | Нет |
Принять ввод конвейера: | False |
Подстановочные знаки: | False |
Задает максимальное количество объектов , чтобы вернуться для запроса доменных служб Active Directory. Если вы хотите получать все объекты, установите для этого параметра значение $Null (нулевое значение). Вы можете использовать Ctrl+C, чтобы остановить опрос и вернуть объекты.
Значение по умолчанию — $Null.
Тип: | Int32 |
Позиция: | С именем |
По умолчанию: | Нет |
Принять ввод из канала: | Ложь |
Принять подстановочные знаки: | Ложь |
Указывает путь Active Directory для поиска.
Когда вы запускаете командлет с диска поставщика Active Directory, этот параметр по умолчанию соответствует текущему пути диска.
Когда вы запускаете командлет вне Active Directory Единица поставщика каталогов в целевом объекте AD DS значением по умолчанию для этого параметра является контекст именования по умолчанию для целевого домена.
значение — это контекст контекста именования по умолчанию для целевого экземпляра LDS, если он указан путем установки свойства msDS-defaultNamingContext объекта агента службы каталогов Active Directory (DSA) ( nTDSDSA ) для экземпляра AD LDS. Если для целевого экземпляра AD Контекст именования LDS по умолчанию не был указан, этот параметр не имеет значения по умолчанию.
Когда значение параметра SearchBase установлено в пустую строку и подключено к порту GC, выполняется поиск во всех разделах. Если значение параметра SearchBase установлено в пустую строку и не подключено к порту GC, произойдет ошибка.
Тип: | Строка |
Позиция: | Именованный |
По умолчанию: | Нет |
Принять ввод канала: | Ложь |
Принять подстановочные знаки: | Ложь |
Определяет область поиска Active Directory. Допустимые значения для этого параметра:
- Базовый или 0
- Одноуровневый или 1
- Поддерево или 2
Область поиска с базовым значением ищет только данного пользователя. Если в параметре SearchBase указано организационное подразделение, пользователи не будут возвращены, например, по заданной команде Filter. Запрос OneLevel ищет непосредственных потомков этого пути или объекта. Этот параметр работает только в том случае, если в качестве основы для поиска указано организационное подразделение. Если пользователь указан, результаты не возвращаются. Запрос поддерева находит текущий путь или объект и все дочерние элементы этого пути или объекта.
Тип: | ADSearchScope |
Допустимые значения: | Base, OneLevel, Subtree |
Положение: | Named |
По умолчанию: | Нет |
Принять ввод канала: | Ложь |
Принять подстановочные знаки: | False |
Указывает экземпляр доменных служб Active Directory для подключения и предоставляет одно из следующих значений для соответствующего доменного имени или сервера каталогов. Служба может быть любой из следующих: облегченные доменные службы Active Directory, доменные службы Active Directory или теневое копирование Active Directory.
Значения имени домена:
- Полное соответствие Имя домена (FQDN)
- Имя NetBIOS
Значения сервера каталогов:
- Полное имя сервера каталогов
- Имя NetBIOS
- Полное имя сервера каталогов и порт
Значение по умолчанию параметра Сервер определяется одним из следующих методов в порядок их появления:
- Использование значения Сервер от объектов, проходящих через канал.
- Используйте информацию о сервере, связанную с диском, от поставщика Active Directory PowerShell при работе на этом диске.
- Использование домена компьютера PowerShell.
Тип: | Строка |
Позиция: | Именованный |
По умолчанию: | Нет |
Принять ввод канала: | False |
Принимать подстановочные знаки: | False |
Записи
None или Microsoft.ActiveDirectory.Management.ADUser
Parameter Identity принимает объект User.
Outputs
Возвращает один или несколько объектов User . user.
Эта подпрограмма возвращает набор значений свойств по умолчанию ADUser . Чтобы получить дополнительные свойства ADUser , используйте параметр Properties
Чтобы получить список набора свойств по умолчанию объекта ADUser , используйте параметр следующую команду:
Чтобы получить список наиболее часто используемых свойств объекта ADUser, используйте следующую команду:
Get-ADUser -Extended Properties