Get-LocalGroupMember genera un error para el grupo Administradores

3

Los siguientes comandos se ejecutan en una máquina virtual con Windows 10 que está unida a AzureAD:

PS C: \ Windows \ system32> Get-LocalGroupMember -Group Administrators
Get-LocalGroupMember: Error al comparar dos elementos en la matriz. En línea: 1 char: 1

PS C: \ Windows \ system32> Get-LocalGroupMember -Group Users
Group NT AUTHORITY \ Authenticated Users Unknown
Group NT AUTHORITY \ INTERACTIVE Desconocido

PS C: \ Windows \ system32> administradores de grupo local neto Administrador de
miembros
AzureAD \ UserName

¿Alguna idea de por qué el comando PowerShell Get-LocalGroupMember está generando un error en el grupo Administradores mientras que net localgroup funciona igual que Get-LocalGroupMember para el grupo Usuarios?

munrobasher
fuente
Hrm, no hay repro en mis computadoras win10.
Zoredache
Funciona bien en mi PC de desarrollo, solo que no esta versión de prueba de Windows 10 VM. Hmm ...
munrobasher

Respuestas:

4

Esto ha sido referenciado como un error oficial:

https://github.com/PowerShell/PowerShell/issues/2996

Aquí hay una solución alternativa:

http://jdhitsolutions.com/blog/scripting/2342/query-local-administrators-with-cim/

ACTUALIZAR:

Tuve algunos problemas con CIM y WMI.

Aquí hay otra solución que funcionó en todas partes para mí.

https://p0w3rsh3ll.wordpress.com/2016/06/14/any-documented-adsi-changes-in-powershell-5-0/

Luke
fuente
Hombre, es el 8/23/2018 y este error aún no está solucionado
Kolob Canyon
0

Esto limpiará los administradores rotos. Creo que fueron creados durante el proceso de actualización:

(script de powershell)

$administrators = @(
([ADSI]"WinNT://./Administrators").psbase.Invoke('Members') |
% { 
 $_.GetType().InvokeMember('AdsPath','GetProperty',$null,$($_),$null) 
}
) -match '^WinNT';

$administrators = $administrators -replace "WinNT://",""

$administrators

foreach ($administrator in $administrators)
{

if ($administrator -like "$env:COMPUTERNAME/*" -or $administrator -like "AzureAd/*")
{
    continue;
}

Remove-LocalGroupMember -group "administrators" -member $administrator
}
Monofuse
fuente