Tutorial del comando «Get-ADUser Powershell» para listar los usuarios del Directorio Activo con ejemplos

Windows Active Directory proporciona capacidades de administración de usuarios empresariales muy útiles. Powershell es un nuevo lenguaje de scripts que proporciona sistemas operativos de Microsoft. Get-ADUser es un comando o un commandlet muy útil que puede ser usado para listar usuarios de Active Directory de diferentes maneras.

Listar los usuarios de los dominios de manera interactiva

Empezaremos con un simple ejemplo. Haremos una lista de todos los usuarios del dominio. En este ejemplo, no proporcionaremos ninguna opción o parámetro al comando Get-ADUser. Pero después de ejecutar el comando se nos pedirá un filtro. Proporcionaremos un asterisco * como filtro que significa todos los usuarios.

PS> Get-ADUSer

Listar Usuarios de Dominio Interactivamente

La siguiente información se proporciona con el comando Get-ADUser.

  • «DistingushedName» proporcionará el nombre canónico completo del usuario.
  • «Habilitado» mostrará si la cuenta de usuario está habilitada o no.
  • «GivenName» es el nombre legible por los humanos que es generalmente el nombre y apellido del usuario.
  • «Clase Objeto» es el tipo de usuario que generalmente es «usuario».
  • «ObjetoGUID» es la identificación única del usuario u objeto actual.
  • «Nombre de la cuenta SAM» es el nombre de la cuenta SAM del usuario.

Lista de usuarios del dominio

En este ejemplo, enumeraremos todos los usuarios del dominio proporcionando el asterisco como parámetro * al comando Get-ADUser. Usaremos la opción -Filtro.

PS> Get-ADUser -Filter *

Listar Usuarios del Dominio

Lista de todos los usuarios en un contenedor o OU

Como el entorno empresarial tiene muchos usuarios con diferentes departamentos, contenedores y OU, es posible que tengamos que enumerar sólo un departamento, contenedor o OU determinado. Usaremos la opción -Base de Búsqueda y proveeremos el OU para filtrar los usuarios. En este ejemplo, usaremos DC=ABC, DC=LOCAL

PS> Get-ADUser -Filter * -SearchBase "DC=ABC,DC=LOCAL"

Listar todos los usuarios en un contenedor o OU

Filtrar usuarios por nombre de usuario

Podemos filtrar los usuarios por su nombre de usuario. Usaremos un lenguaje de consulta que especificará el nombre en Powershell. También usaremos la opción -Filtro. En este ejemplo, listaremos los usuarios cuyos nombres de usuario empiecen con la letra H.

PS> Get-ADUser -Filtro Nombre -como "H*"

Filtrar usuarios por nombre de usuario

Alternativamente, podemos especificar el término de búsqueda como;

*Dan buscará los nombres de usuario que terminen con el Dan.

Filtrar usuarios por apellido

Otro caso de búsqueda popular es la búsqueda de los usuarios según sus apellidos. Usaremos la propiedad Apellido del usuario con la opción -Filtro. En el siguiente ejemplo, buscaremos a los usuarios cuyos apellidos terminen con el ak .

PS> Get-ADUser -Filtro Apellido -como "*ak"

Filtro complejo y búsqueda con AND

Buscar y filtrar con una sola propiedad es fácil, pero en algunos casos, podemos necesitar buscar y filtrar para múltiples condiciones. Podemos usar la lógica de Y y O para diferentes propiedades. A continuación buscaremos a los usuarios cuyo nombre comience con İs y el apellido termine con el an . Así que usaremos una lógica AND para cumplir ambas condiciones para las propiedades Name y Surname.

PS> Get-ADUser -Filtro { (Nombre -Como "Ä°s*") AND (Apellido -Como "*an")}

Hagamos este ejemplo más complejo pero más útil añadiendo más condiciones. Buscaremos y filtraremos a los usuarios que residen en el MyUsers OU con el nombre y apellido especificados.

PS> Get-ADUser -SearchBase "DC=MyUsers,DC=ABC,DC=LOCAL"  -Filtro { (Nombre -Como "Ä°s*") AND (Apellido -Como "*an")}

Obtener todas las propiedades

Como Active Directory es un entorno muy complejo, hay muchos atributos y propiedades sobre los usuarios. Por defecto, sólo algunos de ellos se imprimen como Nombre, SID, Apellido, GivenName, etc. También podemos listar todos estos atributos con el comando -Properties y el asterisco *.

PS> Get-ADUser -Filtro * -Propiedades *

Obtener todas las propiedades

Como podemos ver en la captura de pantalla que propiedades como AccountExpirationDate, AccountLockoutTime, … se imprimen.

  • «AccountExprirationDate» mostrará el día de expiración de la cuenta si está fijada. Si no, ahora habrá un valor.
  • «La cuenta expira» mostrará si la cuenta tiene una fecha de caducidad.
  • «AccountLockoutTime» mostrará el intervalo para bloquear la cuenta cuando esté inactiva.
  • «BadLogonCount» mostrará cuántos intentos de acceso fallidos ocurrieron en el pasado.
  • «Creado» mostrará la información de fecha y hora de la creación de la cuenta.
  • «Compañía» mostrará el nombre de la compañía de la cuenta de usuario si está establecido.

Filtrar y mostrar propiedades específicas

Como hay muchas propiedades y por defecto, sólo algunas de ellas se imprimen, podemos necesitar que se impriman propiedades específicas. Podemos imprimir una propiedad o atributo específico especificándolo con la opción -Propiedad como se muestra a continuación. Imprimiremos propiedades como BadLogonCount, Title etc.

PS> Get-ADUser -Filtro * -Propiedades "BadLogonCount", "Title"

Filtrar y mostrar propiedades específicas

Mostrar propiedades para un usuario específico

También podemos mostrar las propiedades del usuario dado o específico que necesitamos para proporcionar el nombre de usuario a la opción -Filtro y las propiedades o atributos que queremos mostrar.

PS> Get-ADUser -Filtro "Nombre -como İsmail Baydan" -Propiedades "BadLogonCount", "Título"

Mostrar Propiedades Para Usuario Específico

Exportar a un archivo CSV

Si trabajamos con sistemas de terceros y proporcionamos datos de usuario del Directorio Activo, podemos usar el formato CSV. Podemos exportar los datos de usuario del Directorio Activo en CSV a un archivo con el comando Exportar-CSV como se muestra a continuación. También proporcionaremos el nombre y la ruta del archivo CSV que es ADUsers.csv en este ejemplo.

PS> Get-ADUser -Filtro "*" | Exportar-CSV -Path ADUsers.csv

Exportar al archivo CSV

Imprimir dirección de correo electrónico

La información de la dirección de correo electrónico también se imprimió con el comando Get-ADUser. Sólo proporcionaremos el correo electrónico como la propiedad que queremos imprimir.

PS> Get-ADUser -Filtro "*" -Propiedades "EmailAddress"

Lista sólo de usuarios habilitados

Los usuarios del Directorio Activo pueden ser desactivados por diferentes razones como la seguridad. Por lo tanto, después de que una cuenta de usuario se deshabilite, su propiedad «Enabled» (Habilitado) se establecerá en «false» (falso). Si necesitamos listar solo los usuarios habilitados y filtrar los usuarios deshabilitados podemos usar el filtro Enabled -eq $True.

PS> Get-ADUser -Filter {Activado -eq $True}

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.