Se
pretende sacar un listado de usuarios inactivos en una Unidad
Organizativa (OU) en particular mediante un script de PowerShell.
Usaremos:
- Get-ADUser -> Extraer la información del objeto usuarios.
- -SearchBase -> Identificar el dominio y la OU en concreto.
- -filter -> Filtro de obtención de datos (parámetro obligatorio)
- -properties -> Extraer solo las características que deseamos del objeto usuario.
- Where-Object -> Filtrar los resultados y obtener solo lo que deseamos.
- Sort-Object -> para ordenar los resultados.
- Format-Table -> para mostrar la información en tabla.
- Out-File -> Exportar los resultados a un archivo de texto.
- | -> pipe para concatenar funciones al script.
- ` -> multilinea.
- # -> comentario
El comado completo sería:
Get-ADUser -SearchBase ‘OU=SubOU_1,OU=OU_1,DC=suja,DC=com’ | `
-filter * `
-Properties Name, Enabled, whenChanged, PasswordExpired | `
Where-Object {$_.Enabled -Match "False" -or $_.PasswordExpired -Match "True"} | `
Sort-Object Name | `
Format-Table Name, SamAccountName | `
Out-File "C:\TMP\UserInactive.txt"
La búsqueda se realizará sobre la Unidad Organizativa (OU) OU_1/Sub_Ou1 y no aplicamos ningún filtro.
El filtro al ser un comando obligatorio pondremos el caracter comodín * para que extraiga todos los datos.
-filter * `
-Properties Name, Enabled, whenChanged, PasswordExpired | `
Where-Object {$_.Enabled -Match "False" -or $_.PasswordExpired -Match "True"} | `
Sort-Object Name | `
Format-Table Name, SamAccountName | `
Out-File "C:\TMP\UserInactive.txt"
La búsqueda se realizará sobre la Unidad Organizativa (OU) OU_1/Sub_Ou1 y no aplicamos ningún filtro.
El filtro al ser un comando obligatorio pondremos el caracter comodín * para que extraiga todos los datos.
De las propiedades del objeto solo queremos conocer si está habilitado (Enable), si ha expirado la contraseña (PasswordExpired) y su fecha de última modificación.
Ahora con Where-Object filtramos para que muestre solo los objetos que no estén habilitados y con la contraseña expirada.
Ordenamos el resultado por nombre y exportamos el resultado en formato tabla al archivo de texto que indicamos (se sobreescriben los datos no se añaden).
Si quieres ver todos los atributos de unobjeto usuario lanza
Get-ADUser nombreUsuario -Properties * | Select *
Referencias:
No hay comentarios:
Publicar un comentario