【问题标题】:PowerShell to Get local user membership remotelyPowerShell 远程获取本地用户成员资格
【发布时间】:2018-09-16 14:17:09
【问题描述】:

在这里需要一些帮助。

我需要使用 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

提前致谢, 干杯。

【问题讨论】:

  • PowerShell 的好处是您可以使用Invoke-Command 发送任何在本地工作的命令(当然,假设您已经设置了 PowerShell 远程处理)。包括Get-LocalUser

标签: powershell get-wmiobject remotecommand memberof


【解决方案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) }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-10-09
    • 1970-01-01
    • 1970-01-01
    • 2018-09-04
    • 1970-01-01
    • 2021-02-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多