Cómo obtener una lista de cuentas de usuario caducadas y la fecha de caducidad en AD usando PowerShell
Jul 20, 2017
Cómo obtener una lista de cuentas de usuario caducadas con PowerShell
Una de las tareas más importantes que realiza un administrador de Active Directory es asegurarse de que las cuentas de usuario expiradas se informen de manera oportuna y que se tomen medidas para eliminarlas o deshabilitarlas inmediatamente. Ten en cuenta que las cuentas de usuario para las que estableces una fecha de expiración solo se crean temporalmente. Por ejemplo, podrías haber creado varias cuentas de usuario para permitir que los proveedores inicien sesión en el Active Directory. De manera similar, podrías haber creado cuentas de usuario para contratistas. Si deseas ver qué cuentas han expirado, ejecuta el siguiente comando de PowerShell:
Search-ADAccount -Server $ThisDomain -Credential $Creds -AccountExpired -UsersOnly -ResultPageSize 2000 -resultSetSize $null| Select-Object Name, SamAccountName, DistinguishedName
Tenga en cuenta el uso del cmdlet de PowerShell Search-ADAccount nuevamente pero con un interruptor diferente esta vez. El interruptor que usamos es AccountExpired. Como sugiere el nombre, el interruptor AccountExpired le ayuda a recopilar cuentas de usuario que han expirado.
Cómo obtener la fecha de expiración de la cuenta usando PowerShell
Para obtener la fecha de expiración de la cuenta AD account expiration date de todos los usuarios habilitados en su Active Directory puede usar el cmdlet Get-ADUser con la propiedad -AccountExpirationDate. Ejecute el siguiente script en PowerShell ISE en su Windows Server:
Get-ADUser -Filter 'enabled -eq $true' -Properties AccountExpirationDate | Select sAMAccountName, distinguishedName, AccountExpirationDate
Obtendrá una fecha y hora de caducidad para una lista completa de sus usuarios de AD.
Si necesita un resumen para un grupo específico debe modificar el script agregando el parámetro -SearchBase. Puede canalizar los datos a un archivo .csv (por ejemplo, para importarlo a Excel o abrirlo en un editor de texto) agregando |export-csv <Path> –NoTypeInformation
Suponiendo que necesitamos exportar la lista de fechas de vencimiento de cuentas para la unidad organizativa “IT” del dominio enterprise.com, la expresión que ejecutaremos en el DC será la siguiente:
Get-ADUser -Filter 'enabled -eq $true' -Searchbase "OU=IT,DC=enterprise,DC=com" -Properties AccountExpirationDate | Select SAMAccountName, distinguishedName, AccountExpirationDate |export-csv C:TempExpiryDate.csv -NoTypeInformation
En resumen, con habilidades mínimas de scripting en Microsoft Powershell Search-ADAccount, combinado con Get-ADUser puede ayudarte a resolver muchas tareas ad-hoc de limpieza y análisis de AD.
¿Necesitas más scripts de PowerShell para Active Directory? Encuentra todos los PowerShell commands for Active Directory en un solo post.
Contenido relacionado seleccionado:
- Cómo encontrar rápidamente cuentas caducadas en Active Directory sin PowerShell
- Cómo recibir notificaciones de una contraseña caducada en Active Directory con PowerShell
- Cómo obtener una lista de usuarios con contraseña que nunca expira
- Cómo recordar a los usuarios que cambien sus contraseñas antes de que caduquen
- Cómo exportar la configuración de directivas de grupo a un informe ejecutable
Haga seguimiento de cuentas expiradas y reduzca el riesgo con Netwrix Auditor
Identifique cuentas huérfanas y caducadas en AD de inmediato
Aprende másCompartir en
Aprende más
Acerca del autor
Nirmal Sharma
Aprende más sobre este tema
Leyes de Privacidad de Datos por Estado: Diferentes Enfoques para la Protección de la Privacidad
Ejemplo de Análisis de Riesgos: Cómo Evaluar los Riesgos
El Triángulo de la CIA y su Aplicación en el Mundo Real
¿Qué es la gestión de registros electrónicos?
Análisis Cuantitativo de Riesgo: Expectativa de Pérdida Anual