Skip to content

Ver el número de usuarios y grupos de Active Directory con Powershell

ver el número de usuarios y grupos de active directory con powershell

Con el objetivo de realizar auditorías de seguridad programadas, así como para hacer limpieza o tareas administrativas, podría resultar necesario conocer el número total de cuentas de usuario presentes en Directorio Activo, cuantas están deshabilitadas o su segmentación por departamentos u OUs (Organizational Units)

Directorio Activo de Microsoft Windows es un rol que se puede añadir a cualquier edición de Windows un directory server (servidor de directorio) en el que dar de altas usuarios para control de accesos a recursos corporativos, auditoría de recursos e implementación de políticas.

Por supuesto, podemos abrir la interfaz gráfica de turno y ponernos a contar el número a mano, pero en corporaciones grandes esto no será viable, dado que podríamos tardar siglos y cometer errores.

Consultar total de usuarios en Active Directory usando Powershell

Prerequisitos

Lo primero es importar el módulo de Active Directory:

Import-Module ActiveDirectory

A continuación tenéis algunos ejemplos que nos permitirán realizar un conteo del total de usuarios y grupos existentes en Directorio Activo de Windows Server.

Total de cuentas de usuario en AD

Emplearemos el siguiente comando, tal cual aparece, tras abrir una ventana de Powershell:

(Get-ADUser -filter *).count

Total de cuentas de usuario en una OU

Para obtener el número de cuentas existentes dentro de una Organizational Unit (no confundir con un grupo) teclearemos lo siguiente:

(Get-ADUser -Filter * -SearchBase "ou=<nuestra_ou>,dc=<dominio1>,dc=<dominio2>").count

Modificaremos los valores en rojo. Ejemplo:

(Get-ADUser -Filter * -SearchBase “ou=Usuarios,ou=GBS,dc=adgbs,dc=com”).count

También podemos utilizar la siguiente consulta:

(get-aduser -filter {memberof -recursivematch "CN=Gupo,OU=<nuestra_ou>,DC=<dominio1>,DC=<dominio2>"}).count

Total de cuentas de usuario dentro de un grupo

Para obtener el total de cuentas de usuario en un grupo de Active Directory escribiremos lo siguiente, modificando el valor en rojo por el que corresponda en nuestro caso:

(Get-ADGroupMember -Identity "Nombre_grupo").count

Otras opciones que podemos utilizar:

(Get-ADGroup Nombre_grupo -Properties *).member.count

Total de grupos existentes en Directorio Activo

Si lo que buscamos no es el total de usuarios sino de grupos, escribiremos la siguiente consulta:

(Get-ADGroup -Filter * -SearchBase "ou=<nuestra_ou>,dc=<dominio1>,dc=<dominio2>").count

Quedaría de la siguiente forma en un ejemplo práctico:

(Get-ADGroup -Filter * -SearchBase “ou=Usuarios,ou=OU1,dc=redactado,dc=com”).count

Te puede interesarAuditoría de contraseñas en Directorio Activo con Weak Password Test

Uso de filtros

Total de usuarios habilitados o deshabilitados en Directorio Activo

También podemos aplicar un filtro más específico para, por ejemplo, obtener el total de cuentas según su estado.

Si queremos el total de cuentas habilitadas, usaremos:

(Get-AdUser -filter * |Where {$_.enabled -eq "True"}).count

Para hacer lo propio con los usuarios deshabilitados:

(Get-ADUser -filter * |Where {$_.enabled -ne "False"}).count

Siguiendo otro de los ejemplos anteriores, podríamos filtrarlo de la siguiente forma para obtener los usuarios dentro de una ruta concreta en base a su grupo y fecha de caducidad de cuenta.

(get-aduser -properties AccountExpirationDate -filter {memberof -recursivematch "ou=<nuestra_ou>,dc=<dominio1>,dc=<dominio2>"} | where {$_.AccountExpirationDate -ne $null}).count

Espero que os haya servido de ayuda y ya sabéis, si os ha gustado compartidlo con vuestros amigos 😉

deweloper View All

Trabajo como consultor de ciberseguridad y me gusta lo que hago. Aficionado a la informática / tecnología en general, me gusta compartir con la gente lo poco que sé. También soy aficionado al deporte y los videojuegos.

One thought on “Ver el número de usuarios y grupos de Active Directory con Powershell Leave a comment

Deja un comentario