Назад | Перейти на главную страницу

Сценарий Powershell - Найти атрибут LogOn - Как из конкретного подразделения?

Это сценарий PowerShell, который я использую, чтобы найти атрибут LogOn у пользователей в Active Directory. Теперь вместо того, чтобы получать всех пользователей, я хочу, чтобы он выполнял поиск только в определенном OU. Домен выглядит так: Домен - OU (пользователи и группы) - OU (Пользователи, OU внутри OU пользователей и групп)

$as = [adsisearcher]"(&(objectClass=person)(objectCategory=user))" 
$as.PropertiesToLoad.Add('cn')
$as.PropertiesToLoad.Add('lastlogon')
$as.PageSize = 200
$as.FindAll() | ForEach-Object {
    $props = @{ 'CN' = ($_.properties.item('cn') | Out-String).Trim()
                'LastLogon' = ([datetime]::FromFiletime(($_.properties.item('lastlogon') | Out-String).Trim())) }
    New-Object psObject -Property $props
    } | Export-Csv 'Lastlogon.csv' -NoTypeInformation

Присвойте значение SearchRoot свойство объекта поиска.

$as.SearchRoot = "LDAP://dc=fabrikam, dc=com"

Больше на https://technet.microsoft.com/en-us/library/ff730967.aspx

Я нахожу информацию о входе в систему из определенного подразделения через Powershell, используя следующие

Get-ADUser -Filter * -SearchBase "OU=SpecificOU,OU=ContosoUsers,DC=Contoso,DC=local" -Properties * | Select-Object -Property Name, lastlogondate | Export-Csv C:\lastlogon.csv

Вышеупомянутый однострочный файл создаст имя и LastLogonDate для всех учетных записей пользователей в SpecificOU в подразделении ContosoUsers в домене Active Directory Contoso.local, а затем экспортирует содержимое в файл .CSV в корень C: .

-SearchBase - это ключ в однострочном выше. С его помощью вы можете указать конкретный путь Active Directory для поиска.