PowerShell для удаленного получения членства локального пользователя

Нужна помощь здесь.

Мне нужно получить список локальных пользователей удаленного компьютера и в какую группу они входят, используя скрипт PowerShell.

Я старался:

Get-LocalUser
Get-LocalGroup
Get-LocalGroupMember

Также:

gwmi win32_UserAccount
gwmi win32_group 

но это очень медленно и тянет информацию больше, чем требование, которое требует времени.

Я хотел бы, чтобы вывод был отформатирован примерно так:

User     Memberof
------   --------------------
abc12    Administrators
efg23    remote desktop users
hij45    Administrators,Backup Operators,users
xyz56    remote desktop users,Backup Operators

Заранее спасибо, ура.

1 ответ

Я использую ADSI, и это довольно быстро.

$RemoteComputerName = 'RemoteComputer'
$LocalGroup = 'Remote Desktop Users'

$ADSI = [ADSI]("WinNT://$RemoteComputerName,Computer")
$Group = $ADSI.PSBase.Children.Find($LocalGroup,'Group')
$Group.PSBase.Invoke('Members').Foreach{ $_.GetType().InvokeMember('Name','GetProperty',$null,$_,$null) }
Другие вопросы по тегам