ADGroupMember: obtenga todos los usuarios en ADGroup con PowerShell

Los grupos de Active Directory le permiten asignar fácilmente permisos o software a sus usuarios.

Pero, ¿cómo se obtienen todos los miembros de un grupo? Para exportar o actualizar todos los usuarios de un ADGroup podemos usar el Cmdlet Get-ADGroupMember en PowerShell.

En este artículo, veremos cómo puede usar el comando Get-ADGroupMember en PowerShell.

Antes de comenzar, asegúrese de haber instalado el módulo de Active Directory de PowerShell.

Obtenga todos los miembros del grupo con Get-ADGroupMember

El comando Get-ADGroupMember obtendrá todos los objetos que son miembros del grupo.

Pueden ser usuarios, equipos y también otros grupos (anidados). Para enumerar simplemente a todos los miembros de un grupo, podemos usar el siguiente cmdlet en PowerShell:

Get-ADGroupMember -Identity SG_M365_BP | ft

Esto mostrará una lista de todos los miembros del grupo SG_M365_BP y los formateará en una tabla (ft).

Get-ADGroupMember
Get-ADGroupMember

En la mayoría de los casos, una lista simple de todos los miembros del grupo no es lo que está buscando.

Probablemente desee obtener más detalles del usuario, como la dirección de correo electrónico o el nombre para mostrar de todos los usuarios.

Para hacer esto, simplemente podemos canalizar el cmdlet Get-ADuser detrás de él, solicitar todos los detalles que necesitamos de cada usuario en el grupo:

Get-ADGroupMember -Identity SG_M365_BP | Get-ADUser -Properties DisplayName,EmailAddress | Select Name,DisplayName,EmailAddress,SAMAccountName
powershell obtener miembros con Get-ADGroupMember
Obtener todos los miembros del grupo con PowerShell

Puede seleccionar cualquier atributo que necesite en la parte Get-ADUser, pero asegúrese de agregarlo también al final del cmdlet.

Grupos anidados

Los grupos anidados son una práctica común en Active Directory.

Le permiten asignar permisos o políticas a los usuarios en función de su pertenencia a un grupo.

Tomemos el siguiente ejemplo en el que hemos asignado PowerBi a la dirección de ventas y al consejo de administración:

ADGroup

Para obtener los usuarios reales que tienen acceso a PowerBi, no podemos simplemente hacer Get-ADGroupMember, porque eso solo devolverá los dos grupos:

Grupos anidados

Lo que queremos es obtener los miembros de los dos grupos anidados. Para ello, podemos utilizar el -recursive parámetro.

De esta manera el Get-ADGroupMember cmdlet también pasará por todos los grupos anidados en Active Directory.

Get-ADGroupMember -Identity SG_PowerBi -Recursive | ft
powershell obtener grupo de anuncios

Obtenga solo usuarios, computadoras o grupos anidados

Cuando tiene un grupo mixto con usuarios y grupos anidados, es posible que desee obtener solo los usuarios de ese grupo. O solo los otros grupos anidados.

Para hacer esto, podemos filtrar los resultados en la clase de objeto del miembro del grupo. Esto puede ser:

# Get only the users from a group
Get-ADGroupMember -Identity SG_PowerBi | Where-Object {$_.objectClass -eq "user"} | ft

# Or get only the nested groups
Get-ADGroupMember -Identity SG_PowerBi | Where-Object {$_.objectClass -eq "group"} | ft

Exportar miembros del grupo a CSV con PowerShell

La mayoría de las veces, cuando uso el cmdlet Get-ADGroupMember, quiero exportar los resultados a Excel.

Para ello podemos utilizar el cmdlet Export-CSV en PowerShell. Esto exportará todos los resultados de su cmdlet de PowerShell a un archivo csv.

Digamos que queremos exportar todos los miembros del grupo SG_M65_BP con su dirección de correo electrónico a Excel:

Get-ADGroupMember -Identity SG_M365_BP | Get-ADUser -Properties DisplayName,EmailAddress | Select Name,DisplayName,EmailAddress,SAMAccountName | Export-CSV -Path c:\temp\M365BP-users.csv -NoTypeInformation

Esto exportará los resultados a un archivo csv y lo almacenará en C:\Temp. El cmdlet -NoTypeInformation quita esa información de encabezado del archivo CSV. Si desea obtener más información sobre la exportación a CSV, asegúrese de leer este artículo.

Terminando

Como ha visto, es bastante fácil obtener a todos los miembros de un grupo con Get-ADGroupMember.

Asegúrese de utilizar el parámetro -recursivo cuando tenga grupos anidados.

Si tiene alguna pregunta, simplemente deje un comentario a continuación.

Otros artículos relacionados

Cómo usar Import-CSV en PowerShell

Cómo usar Import-CSV en PowerShell

Cuando trabajamos con PowerShell, podemos usar archivos CSV para importar datos a los sistemas o usarlos como una lista de ...
Leer Más
Encuentra direcciones de correo electrónico en Office 365 con PowerShell

Encuentra direcciones de correo electrónico en Office 365 con PowerShell

A veces necesita encontrar el usuario o un buzón que está usando una dirección de correo electrónico en particular. En ...
Leer Más
Explicación del cliente PowerShell SSH y la comunicación remota

Explicación del cliente PowerShell SSH y la comunicación remota

¿Necesita administrar un servidor remoto o un dispositivo de red? Entonces probablemente esté usando SSH para conectarse y administrarlos. El ...
Leer Más
Obtenga el estado de MFA de los usuarios de Office 365 con Microsoft Graph

Obtenga el estado de MFA de los usuarios de Office 365 con Microsoft Graph

Hacer un seguimiento del estado de MFA de su usuario es importante para mantener protegido a su arrendatario. Por ahora, ...
Leer Más
Use Azure Automation y PowerShell para automatizar las tareas de Office 365

Use Azure Automation y PowerShell para automatizar las tareas de Office 365

Azure Automation es una de las herramientas más populares para ejecutar scripts de PowerShell en la nube. No solo puede ...
Leer Más
Cómo usar PowerShell Reemplazar para reemplazar una cadena o un carácter

Cómo usar PowerShell Reemplazar para reemplazar una cadena o un carácter

¿Necesita reemplazar una cadena o un carácter en PowerShell? ¿O desea insertar bloques de texto completos en un archivo? Entonces ...
Leer Más

Deja un comentario