Примеры работы с Powershell Filter с объектами AD


06 августа 2019


Примеры с Powershell Filter фильтрация объектов AD

Ключ Powershell Filter фильтрует по свойствам. Чаще всего этот ключ встречается с командами Active Directory. Если мы его используем так:

Get-ADUser -Filter *

То у нас отобразятся все пользователи. Для того что бы узнать свойства, по которым мы можем фильтровать, у нас есть два способа.

Первый - это через Get-Member:

Get-ADUser -Filter * | Get-Member

Get-ADUser Filter

Второй вариант:

Get-ADGroup -Filter * | SELECT *

Второй вариант просто отобразит все свойства.

Нужно обращать внимание на то, какие данные хранит в себе свойство. Это может быть число, строка, bool и д.р.

Например пользователь может быть включен или выключен и это булевый тип. Что бы выполнить фильтрацию по этому значению нужно сопоставить $true (включен) или $false (выключен):

Get-ADUser -Filter {Enabled -eq $false}

Мы можем искать совпадение по имени, в таких ситуациях это строки:

Get-ADComputer -Filter {Name -Like "*Test*"}

Так же возможно проверять несколько условий:

Get-ADuser -filter {(Name -like "*test*") -or (GivenName -Like "*test*")}

Во многих командах, которые работают объектами AD есть ключ Properties, который выводит дополнительные свойства (например дату создания пользователя). Свойства полученные этим ключом нельзя использовать в фильтре. Они обрабатываются так:

Get-ADObject -Filter * -Properties isDeleted | Where-Object -Property isDeleted -eq $true

Если вам интересно, то вы можете почитать об операторах сравнения Powershell.

...

Теги: #powershell #ad


Популярные тэги
О блоге
Этот блог представляет собой конспекты выученного материала, преобретенного опыта и лучшие практики в системном администрировании и программировании.