Я довольно новый пользователь PS ... Ищете некоторую помощь с скриптом powershell для получения списка пользователей безопасности, членом которых является пользователь.Как указать членство в группе AD для пользователей AD, используя список входных данных?
Чтобы описать то, что мне нужно:
- У меня есть список ввода (текстовый файл) со многими пользователями (samaccountnames). Каждое имя находится на новой строке.
- Мне нужен сценарий для поиска этих имен в AD - весь лес, а не только один домен
- вывод должен выглядеть как «samaccountname» и список групп, в которых эта учетная запись является членом одной строки, поэтому я могу сортировать ее первенствует
Это сценарий, у меня есть:
$users = Get-Content C:\users.txt
ForEach ($User in $users) {
$getmembership = Get-ADUser $User.Users -Properties MemberOf | Select -ExpandProperty memberof
$getmembership | Out-File -Append c:\membership.txt
}
но он бросает мне ошибку:
Get-ADUser : Cannot validate argument on parameter 'Identity'. The argument is null. Supply a non-null argument and try the command again.
At line:4 char:28
+ $getmembership = Get-ADUser <<<< $User.Users -Properties MemberOf | Select -ExpandProperty memberof
+ CategoryInfo : InvalidData: (:) [Get-ADUser], ParameterBindingValidationException
+ FullyQualifiedErrorId : ParameterArgumentValidationError,Microsoft.ActiveDirectory.Management.Commands.GetADUser
В любом случае, этот скрипт не будет искать весь лес. Список ввода
Пример:
username1
username2
username3
username4... etc
Пример вывода списка
username1;group1;group2;group3
username2;group1;group2;group3;group4... etc or something similar
Любая помощь будет принята с благодарностью.
Большое спасибо, это было полезно :) –
Хорошая сделка! Рад, что ты нашел это полезным. Не могли бы вы пометить ответ в зависимости от ситуации? –