用户组。是否有一个仅供标准用户使用的组?

用户组。是否有一个仅供标准用户使用的组?

我知道有一个管理员组,但我需要一个只针对标准用户的组来执行此命令。FOR /f "skip=6 delims=" %%u IN ('net localgroup (Group here)') DO (IF "%%u" NEQ "The command completed successfully." echo %%u)我需要它来列出所有标准用户。顺便说一句,我使用批处理和 powershell 编码。

谢谢!〜亨利

答案1

取决于域或工作组模式,并根据微软,您的组名应该是用户或者高级用户对于工作组和域用户对于域名。

答案2

在独立机器上,该Users组包含所有普通用户以及来自的几个特殊组类主体NT AUTHORITY

net localgroup Users

在 PowerShell 中,这相当于:

Get-LocalGroupMember 'Users'

或者,您可以使用 WMI 查询来获取真实帐户:

wmic useraccount

其中包括Guest帐户、DefaultAccount和内置的Administrator。您可以从 PowerShell 的获得相同的结果Get-LocalUser

如果您只想列出已启用的帐户,您可以缩小查询范围:

wmic useraccount where "Disabled = FALSE"

PowerShell 中也一样:

Get-LocalUser | ? {$_.Enabled}

测试给定用户(在变量中$u)是否是管理员:

(Get-LocalGroupMember 'Administrators' | ? {$_.SID -eq $u.SID}).Count -ne 0

这将获取管理员组的成员,并检查是否有任何成员与给定的用户对象具有相同的 SID(安全标识符)。您可以从Get-LocalUser或获取这样的用户对象Get-LocalGroupMember

相关内容