Cómo mostrar por consola los usuarios que son miembros de un grupo de seguridad. Usaremos la línea de comandos PowerShell y activaremos el módulo ActiveDirectory.
- Requisitos para listar los usuarios pertenecientes a un grupo de seguridad en Windows Server.
- Listar por consola los usuarios pertenecientes a un grupo de seguridad en Windows Server con PowerShell.
Requisitos para listar los usuarios pertenecientes a un grupo de seguridad en Windows Server
Necesitaremos disponer de un dominio Directorio Activo (Active Directory) de Windows Server. En nuestro caso sobre Windows Server 2019, aunque el proceso es válido para equipos servidores, desde la versión 2008 de Windows Server hasta la 2019 y superiores.
En uno de los controladores del dominio, o en todos, activaremos en PowerShell el módulo ActiveDirectory. Para ello abriremos PowerShell (como administrador). En el caso de Windows Server 2008, desde el botón «Inicio» – «Accesorios» – «Windows PowerShell», pulsando con el botón derecho del ratón sobre el acceso directo «Windows PowerShell (x86)» y eligiendo «Ejecutar como administrador»:
En el caso de equipos con Windows Server 2012/2016/2019 en adelante, pulsaremos en el botón Inicio, escribiremos «powershell» y pulsaremos con el botón derecho del ratón sobre «Windows PowerShell», en el menú emergente pulsaremos en «Ejecutar como administrador»:
Para listar los módulos PowerShell activos en el equipo actualmente podemos ejecutar el comando:
1 |
Get-InstalledModule |
En equipos con Windows Server 2008 puede que no se reconozca el comando anterior, mostrando el mensaje:
1 2 3 4 5 |
El término 'Get-InstalledModule' no se reconoce como nombre de un cmdlet, función, archivo de script o programa ejecutable. Compruebe si escribió correctamente el nombre o, si incluyó una ruta de acceso, compruebe que dicha ruta es correcta e inténtelo de nuevo. En línea: 1 Carácter: 20 + Get-InstalledModule + CategoryInfo : ObjectNotFound: (Get-InstalledModule:String) [], CommandNotFoundException + FullyQualifiedErrorId : CommandNotFoundException |

En equipos Windows Server 2008 habrá que instalar el parche KB3191566-x64 (Win7AndW2K8R2-KB3191566-x64.msi), disponible en la web oficial de Microsoft.
En cuanto dispongamos del comando Get-InstalledModule, lo ejecutaremos y nos mostrará los módulos PowerShell instalados, que por defecto, en equipos Windows Server 2008, 2012, 2016 y 2019 no devolverá ningún módulo:
También podemos usar siguiente comando PowerShell, que nos mostrará todos los módulos disponibles:
1 |
Get-Module -Listavailable |
Si ActiveDirectory está instalado aparecerá:
En caso de no estar instalado el módulo ActiveDirectory para PowerShell, podremos instalarlo de diversas formas, en función del sistema operativo, como mostramos a continuación.
Instalar módulo ActiveDirectory en PowerShell en equipos Windows 10
Para el caso de equipos con Windows 10, podremos instalar el módulo de ActiveDirectory para PowerShell desde el propio PowerShell. En primer lugar ejecutaremos el siguiente comando, para ver si el módulo está disponible en Internet (online), para su descarga e instalación:
1 |
Get-WindowsCapability -name rsat.activedirectory.DS-LDS.Tools* -online |
Si devuelve:
Name : Rsat.ActiveDirectory.DS-LDS.Tools~~~~0.0.1.0
State : NotPresent
DisplayName : RSAT: Herramientas de Active Directory Domain Services y Lightweight Directory Services
Description : Las herramientas Active Directory Domain Services(AD DS) y Active Directory Lightweight Directory
Services (AD LDS) incluyen herramientas de línea de comandos y complementos para administrar de forma
remota AD DS y AD LDS en Windows Server.
DownloadSize : 5230259
InstallSize : 17352199
Significará que el módulo existe online y está disponible y no está instalado en el equipo (State: NotPresent). Por ello si ejecutamos el comando:
1 |
Get-Command -module ActiveDirectory |
No nos devolverá nada, porque el módulo ActiveDirectory no está instalado.
Para instalarlo en Windows 10 ejecutaremos el comando:
1 |
Add-WindowsCapability -online -Name "Rsat.ActiveDirectory.DS-LDS.Tools~~~~0.0.1.0" |
Se mostrará una barra de progreso de la descarga e instalación del módulo:
Cuando finalice la descarga e instalación del módulo ActiveDirectory mostrará:
Path :
Online : True
RestartNeeded : False
Y ahora, al ejecutar el comando:
1 |
Get-WindowsCapability -name rsat.activedirectory.DS-LDS.Tools* -online |
Devuelve:
Name : Rsat.ActiveDirectory.DS-LDS.Tools~~~~0.0.1.0
State : Installed
DisplayName : RSAT: Herramientas de Active Directory Domain Services y Lightweight Directory Services
Description : Las herramientas Active Directory Domain Services(AD DS) y Active Directory Lightweight Directory
Services (AD LDS) incluyen herramientas de línea de comandos y complementos para administrar de forma
remota AD DS y AD LDS en Windows Server.
DownloadSize : 5230259
InstallSize : 17352199
Y al ejecutar el comando PowerShell:
1 |
Get-Command -module ActiveDirectory |
Ahora sí que devuelve todos los comandos ActiveDirectory disponibles:
Instalar módulo ActiveDirectory en PowerShell en equipos Windows Server 2008 2012 2016 2019
Para el caso de sistemas operativos servidores, Windows Server, para instalar el módulo ActiveDirectory de PowerShell podemos hacerlo desde el asistente para agregar nuevos roles y características, seleccionando, en Características: «Herramientas de administración remota del servidor» – «Herramientas de administración de roles» – «Herramientas de AD DS y AD LDS» – «Módulo de Active Directory para Windows PowerShell«:
En cuanto está instalada esta característica tendremos disponibles todos los comandos PowerShell de gestión de Active Directory:
En servidores con Windows Server 2012, 2016 y 2019 podremos instalar esta característica desde PowerShell, con el comando:
1 |
Install-WindowsFeature RSAT-AD-PowerShell |
Se iniciará la instalación de la característica, mostrando el progreso:
Cuando finalice nos mostrará el resultado:
Listar por consola los usuarios pertenecientes a un grupo de seguridad en Windows Server con PowerShell
En cuanto dispongamos del módulo de ActiveDirectory para PowerShell, podremos ejecutar comandos de gestión de nuestro dominio Active Directory.
Para listar todos los grupos de seguridad ejecutaremos el comando PowerShell:
1 |
get-adgroup -filter * | sort name | select Name |
Si queremos mostrar sólo los grupos de seguridad cuyo nombre empiece por «Adm», usaremos el comando:
1 |
get-adgroup -filter {Name -like 'Adm*'} | sort name | select Name |
En un dominio «estándar», devolverá:
Administración de empresas
Administradores
Administradores de DHCP | sor
Administradores de DHCP
Administradores de esquema
Administradores DHCP
Admins. del dominio
Para listar los usuarios pertenecientes a un grupo de seguridad, por ejemplo a «Admins. del dominio«, usaremos el comando PowerShell:
1 |
Get-AdGroupMember -identity 'Admins. del dominio'| sort name | select name,objectclass,sid |
Otra forma de mostrar los usuarios pertenecientes a un grupo de seguridad, en el ejemplo al grupo de seguridad «Admins. del dominio«:
1 |
Get-ADGroup 'Admins. del dominio' -Properties Member | Select-Object -ExpandProperty Member |
El comando anterior es interesante porque muestra el nombre distinguido completo del objeto, incluidas las unidades organizativas a las que pertenezca.
Podremos realizar cualquier tipo de filtro, mostrar los campos que necesitemos e incluso exportar los resultados a CSV, como mostramos en el siguiente comando:
1 |
Get-ADGroupMember -identity 'Admins. del dominio' | select name | Export-csv -path C:\ProyectoA_CSV\usuarios_grupo_administradores.csv -NoTypeInformation |