Desbloquear cuenta de usuario en Active Directory mediante PowerShell
Dentro del módulo ActiveDirectory disponible en PowerShell podemos encontrar un amplio repertorio de comandos, los cuales permiten realizar tareas de administración y configuración de un Active Directory de igual forma que lo haríamos con las herramientas gráficas habituales. En el caso de tener cuentas de usuario bloqueadas podemos hacer uso de los siguientes Cmdlet, que muchas veces es una forma más rápida y directa de tratar con ellas.
El siguiente comando nos sacará una lista de todas las cuentas que están bloqueadas actualmente (podemos sustituir Select-Object por FT):
Search-ADAccount -LockedOut -UsersOnly | Select-Object Name, SamAccountNameSi lo que queremos es comprobar el bloqueo de la cuenta de un usuario concreto utilizamos:
Get-ADUser -Identity nombre_usuario -Properties LockedOut | Select-Object samaccountName,Lockedoutque nos devuelve en la propiedad LockedOut el valor True, si la cuenta está bloqueada, o False, en caso de no estarlo. Este comando devuelve el nombre de usuario y el valor de la propiedad LockedOut en dos columnas, junto con el título de las mismas. Si queremos obtener solamente el valor de la propiedad LockedOut, para guardarlo en una variable por ejemplo:
$bloqueo=(Get-ADUser -Identity nombre_usuario -Properties LockedOut).LockedoutPara desbloquear una cuenta de usuario ejecutaremos la siguiente sentencia:
Unlock-ADAccount nombre_usuario -Confirmdonde el parámetro -Confirm nos obligará a confirmar que realmente queremos desbloquear la cuenta. Si no se indica se desbloquerá la cuenta directamente. Una forma alternativa es la siguiente:
Get-ADUser -Identity nombre_usuario | Unlock-ADAccount -ConfirmSe pueden ver los comandos disponibles en el módulo ActiveDirectory mediante Get-Command -module ActiveDirectory