# Obtiene la lista de usuarios locales
$usuariosLocales = Get-WmiObject -Class Win32_UserAccount | Where-Object { $_.LocalAccount -eq $true }
# Muestra la lista de usuarios locales y sus grupos
foreach ($usuario in $usuariosLocales) {
$nombreUsuario = $usuario.Name
Write-Host "Usuario: $nombreUsuario"
try {
# Obtiene la lista de grupos a los que pertenece el usuario
$gruposUsuario = Get-WmiObject -Query "Associators of {Win32_UserAccount.Domain='$env:COMPUTERNAME',Name='$nombreUsuario'} Where ResultClass = Win32_Group"
if ($gruposUsuario) {
Write-Host "Grupos a los que pertenece:"
foreach ($grupo in $gruposUsuario) {
Write-Host " - $($grupo.Name)"
}
} else {
Write-Host "El usuario no pertenece a ningún grupo."
}
} catch {
Write-Host "Error al obtener información de grupos para el usuario $nombreUsuario."
}
Write-Host "-----------------------------"
}