# Scripts PowerShell de Active Directory para la gestión de usuarios La gestión de cuentas de usuario es una de las tareas más habituales y que más tiempo consume a los administradores de Active Directory (AD). Cada día, son responsables del aprovisionamiento de nuevos usuarios, la modificación de las propiedades de los usuarios existentes, la gestión de la pertenencia a grupos, el restablecimiento de contraseñas, la desactivación de cuentas inactivas y el desaprovisionamiento de usuarios que abandonan la organización. Muchos administradores confían en PowerShell para gestionar estas operaciones cotidianas. En lugar de realizar manualmente pasos que consumen mucho tiempo utilizando la interfaz gráfica de AD, PowerShell permite a los administradores ejecutar comandos precisos que pueden crear, modificar o eliminar varios usuarios simultáneamente, ahorrando horas de trabajo. Este artículo le guiará a través de una lista de comandos PowerShell comunes para administrar usuarios de AD. Si prefiere un enfoque más sencillo, basado en la GUI, también descubrirá una forma más fácil de gestionar todas estas operaciones utilizando ADManager Plus. ## Comandos comunes de PowerShell para la gestión de usuarios de AD He aquí una lista de comandos PowerShell que le ayudarán a gestionar los usuarios de AD. Asegúrese de tener instalado e importado el módulo de AD de PowerShell antes de ejecutar estos comandos. ### Crear un nuevo usuario de AD Este comando crea una única cuenta de usuario llamada John Smith directamente en AD. Los administradores pueden personalizar los valores de nombre de usuario, OU, contraseña, etc. Vea los [pasos detallados para crear un nuevo usuario de AD](https://www.manageengine.com/latam/ad-manager/powershell/importar-usuarios-de-active-directory-con-powershell.html). ```powershell New-ADUser -Name "John Smith" ` -GivenName "John" ` -Surname "Smith" ` -DisplayName "John Smith" ` -UserPrincipalName "jsmith@fabrikam.com" ` -Path "OU=Finance,OU=UserAccounts,DC=FABRIKAM,DC=COM" ` -AccountPassword (ConvertTo-SecureString "P@ssW0rd!" -AsPlainText -Force) ` -ChangePasswordAtLogon $true ` -Enabled $true ``` ### Creación masiva de usuarios con CSV Utilice este comando para crear nuevas cuentas de usuario de AD a partir de un archivo CSV. Permite establecer atributos clave como el nombre, la contraseña y la unidad organizativa (OU), lo que permite una vinculación precisa y escalable sin necesidad de introducir datos manualmente. Vea los [pasos detallados para crear usuarios de AD de forma masiva](https://www.manageengine.com/latam/ad-manager/powershell/importar-usuarios-de-active-directory-con-powershell.html). ```powershell Import-CSV .\users.csv | ForEach-Object { New-ADUser -SamAccountName $_.SamAccountName ` -Name $_.Name ` -GivenName $_.GivenName ` -Surname $_.Surname ` -Path "OU=Finance,OU=UserAccounts,DC=FABRIKAM,DC=COM" ` -AccountPassword (ConvertTo-SecureString $_.Password -AsPlainText -Force) ` -Enabled $true } ``` ### Deshabilitar cuentas de usuario de AD Desactive los usuarios de AD para impedir el inicio de sesión y el acceso a los recursos sin eliminar la cuenta. Se trata de una buena práctica para desvincular a usuarios, gestionar brechas de seguridad o suspender cuentas inactivas conservando sus atributos asociados para una posible reactivación posterior. Vea los pasos [detallados para deshabilitar usuarios de AD](https://www.manageengine.com/latam/ad-manager/powershell/cmd-deshabilitar-cuenta-ad.html). ```powershell Disable-ADAccount -Identity "testUser" ``` ### Habilitar cuentas de usuario de AD Activa un usuario previamente deshabilitado en AD. Esto se utiliza con frecuencia después de la vinculación de nuevos empleados, la reactivación de los empleados que regresan, o la restauración de las cuentas temporalmente deshabilitadas. Especifique el usuario de destino mediante varios identificadores, como el nombre de cuenta SAM, el nombre distinguido o el GUID del objeto. Vea los [pasos detallados para habilitar usuarios de AD](https://www.manageengine.com/latam/ad-manager/powershell/habilitar-cuentas-de-usuario-de-active-directory.html). ```powershell Enable-ADAccount -Identity "testUser" ``` ### Añadir usuarios a un grupo de AD Asigne rápidamente varios usuarios a uno o varios grupos de AD importando nombres desde un archivo CSV. Esto simplifica las actualizaciones de la pertenencia a grupos y ayuda a gestionar eficientemente los permisos y las políticas de acceso. Vea los [pasos detallados para añadir usuarios a un grupo de AD](https://www.manageengine.com/latam/ad-manager/powershell/eliminar-usuarios-de-grupo-de-ad.html). ```powershell Import-CSV .\users.csv | ForEach-Object { Add-ADGroupMember -Identity "Domain Guests" -Members $_.SamAccountName } ``` ### Eliminar usuarios de un grupo de AD Este script lee una lista de usuarios de un archivo CSV y elimina cada uno de ellos del grupo de AD especificado sin pedir confirmación para cada eliminación. Vea los [pasos detallados para eliminar usuarios de un grupo de AD](https://www.manageengine.com/latam/ad-manager/powershell/eliminar-usuarios-de-grupo-de-ad.html). ```powershell Import-CSV .\users.csv | ForEach-Object { Remove-ADGroupMember -Identity "Domain Guests" -Members $_.SamAccountName -Confirm:$false } ``` ### Eliminar una cuenta de usuario de AD Elimine de forma segura las cuentas de usuario de AD cuando los empleados abandonen la organización o las cuentas queden obsoletas, manteniendo su directorio limpio y seguro. Vea los [pasos detallados para eliminar una cuenta de usuario de AD](https://www.manageengine.com/latam/ad-manager/powershell/script-para-eliminar-usuarios-de-ad.html). ```powershell Remove-ADUser -Identity "testuser" -Confirm:$false ``` ### Modificar un usuario de AD existente Este script actualiza las propiedades de usuario como descripciones, cargos o departamentos de forma masiva, ayudándole a mantener la información del directorio precisa y actualizada con el mínimo esfuerzo administrativo. Vea los [pasos detallados para modificar un usuario de AD existente](https://www.manageengine.com/latam/ad-manager/powershell/modificar-atributos-de-usuario-ad-mediante-powershell.html). ```powershell Import-CSV .\users.csv | ForEach-Object { Set-ADUser -Identity $_.SamAccountName -Description $_.Description } ``` ### Modificar los valores de control de las cuentas Modifique la configuración del Control de cuentas de usuario de un usuario de AD para configurar comportamientos de la cuenta como la caducidad de la contraseña, el bloqueo de la cuenta y los permisos de delegación. Este script deshabilita la caducidad de la contraseña e impide que el usuario cambie su contraseña. Vea los [pasos detallados para modificar los valores de control de cuentas](https://www.manageengine.com/latam/ad-manager/powershell/como-modificar-el-control-de-cuentas-de-ad-mediante-powershell.html). ```powershell Set-ADAccountControl -Identity "testuser" -PasswordNeverExpires $true -CannotChangePassword $true ``` ### Establecer la fecha de caducidad de un usuario de AD Establezca una fecha de caducidad en las cuentas de usuario para deshabilitar automáticamente el acceso después de una fecha determinada. Esto es útil para gestionar cuentas temporales como contratistas o becarios. Vea los [pasos detallados para fijar una fecha de caducidad](https://www.manageengine.com/latam/ad-manager/powershell/como-establecer-la-fecha-de-vencimiento-de-cuentas-de-ad-mediante-powershell.html). ```powershell Set-ADUser -Identity "testuser" -AccountExpirationDate "2025-12-31" ``` ### Añadir la dirección proxy para un usuario de AD Añada o actualice las direcciones de correo electrónico proxy (alias) para un usuario, utilizadas habitualmente en entornos Exchange y Microsoft 365 para admitir múltiples direcciones de correo electrónico por usuario. Vea los pasos [detallados para añadir direcciones proxy](https://www.manageengine.com/latam/ad-manager/powershell/agregar-direccion-proxy-al-usuario-ad-mediante-powershell.html). ```powershell Set-ADUser -Identity "testuser" -Add @{proxyAddresses="SMTP:jsmith@fabrikam.com","smtp:john.smith@fabrikam.com"} ``` ### Mover un usuario de AD a otra OU Reorganice su estructura de directorios moviendo usuarios entre OU. Esto es útil para reflejar cambios departamentales o reestructuraciones sin recrear cuentas de usuario. Vea los [pasos detallados para mover usuarios de AD a otra OU](https://www.manageengine.com/latam/ad-manager/powershell/como-mover-usuarios-de-ad-con-powershell.html). ```powershell Move-ADObject -Identity "CN=testuser1,DC=Domain,DC=com" ` -TargetPath "OU=TestOU,DC=Domain,DC=com" ``` ### Restablecer o cambiar la contraseña de un usuario de AD Ejecute este script para restablecer contraseñas o imponer otras nuevas de forma segura. Esto ayuda a los administradores a cumplir las políticas de rotación de contraseñas y a resolver los problemas de acceso al instante. Vea los [pasos detallados para cambiar la contraseña de un usuario de AD](https://www.manageengine.com/latam/ad-manager/powershell/cambiar-contrasena-de-ad.html). ```powershell Set-ADAccountPassword -Identity "testuser" ` -NewPassword (ConvertTo-SecureString "NewP@ssw0rd" -AsPlainText -Force) ` -Reset ``` ### Desbloquear una cuenta de usuario de AD bloqueada Desbloquee las cuentas de usuario que se han bloqueado debido a repetidos intentos fallidos de inicio de sesión. Esto permite a los administradores restablecer rápidamente el acceso a los empleados manteniendo las políticas de seguridad. Vea los [pasos detallados para desbloquear un usuario de AD](https://www.manageengine.com/latam/ad-manager/powershell/como-desbloquear-cuentas-de-usuario-ad-mediante-powershell.html). ```powershell Unlock-ADAccount -Identity "testuser" ``` ### Crear un usuario de Microsoft 365 Utilice Microsoft Graph PowerShell SDK para crear un nuevo usuario de Microsoft 365 con el nombre para mostrar, el nombre de usuario principal, el apodo de correo y la contraseña especificados. Este script establece una contraseña temporal que debe restablecerse en el primer inicio de sesión y habilita la cuenta inmediatamente. ```powershell Connect-MgGraph -Scopes "User.ReadWrite.All" New-MgUser -DisplayName "Test User" ` -UserPrincipalName "testuser@yourdomain.onmicrosoft.com" ` -MailNickname "testuser" ` -PasswordProfile @{ forceChangePasswordNextSignIn = $true; password = "P@ssw0rd!" } ` -AccountEnabled $true ``` ## Un enfoque más sencillo, basado en la GUI En entornos grandes, la gestión de usuarios en el mundo real rara vez implica comandos PowerShell de una sola línea. A menudo, los administradores tienen que gestionar cientos o miles de objetos de usuario, lo que hace que la precisión de los scripts y la ejecución repetitiva lleven mucho tiempo y sean propensas a errores. [ADManager Plus](https://www.manageengine.com/latam/ad-manager/?utm_source=admp&utm_medium=windows-powershell&utm_content=powershell-scripts-for-ad-user-management), una [solución de gestión de AD](https://www.manageengine.com/latam/ad-manager/active_directory_bulk_user_management.html?utm_source=admp&utm_medium=windows-powershell&utm_content=powershell-scripts-for-ad-user-management), automatiza estas tareas mediante una consola basada en web que elimina por completo la necesidad de codificación. ¿El resultado? Una gestión más rápida y sin errores, y una fácil delegación de las operaciones relacionadas con el usuario. ## Cómo ADManager Plus sustituye a los complejos scripts de PowerShell **Aprovisionamiento de usuarios basado en plantillas** Cree [plantillas de usuario de AD preconfiguradas](https://www.manageengine.com/latam/ad-manager/plantillas-aprovisionamiento-cuentas-de-active-directory.html?utm_source=admp&utm_medium=windows-powershell&utm_content=powershell-scripts-for-ad-user-management) para agilizar la creación de usuarios con los atributos adecuados, asigne pertenencias a grupos, configuraciones de correo electrónico y ubicación predefinida en OU. **Aprovisionamiento de usuarios basado en reglas** Defina reglas condicionales para rellenar automáticamente los valores de atributos (como Departamento o Gestor) durante la creación de usuarios. Cree usuarios de forma masiva con facilidad, sin esfuerzos repetidos ni comprobaciones cruzadas. **Delegación no invasiva** Delegue de forma segura las [tareas de gestión de usuarios](https://www.manageengine.com/latam/ad-manager/delegacion-mesa-de-ayuda-windows-active-directory-office-365.html?utm_source=admp&utm_medium=windows-powershell&utm_content=powershell-scripts-for-ad-user-management) en el personal de RR.HH. o de la mesa de ayuda sin elevar sus privilegios nativos en AD. **Ejecución libre de errores** Reduzca el riesgo de errores de sintaxis o de scripts con errores de configuración con operaciones intuitivas de apuntar y hacer clic. [Importe CSV y revise visualmente todos los atributos de los usuarios](https://www.manageengine.com/latam/ad-manager/importacion-datos-active-directory.html?utm_source=admp&utm_medium=windows-powershell&utm_content=powershell-scripts-for-ad-user-management) para confirmarlos antes de la creación masiva, minimizando así los errores y la repetición del trabajo. **Aprovisionamiento de cuentas multiplataforma** [Aprovisione cuentas de usuario simultáneamente en AD](https://www.manageengine.com/latam/ad-manager/creacion-aprovisionamiento-usuarios-en-active-directory.html?utm_source=admp&utm_medium=windows-powershell&utm_content=powershell-scripts-for-ad-user-management), Microsoft 365, Exchange, Google Workspace y Skype for Business. Gestione usuarios de distintas plataformas en una única consola. **Automatización** [Automatice tareas repetitivas](https://www.manageengine.com/latam/ad-manager/automatizacion-active-directory.html?utm_source=admp&utm_medium=windows-powershell&utm_content=powershell-scripts-for-ad-user-management) como el aprovisionamiento, el desaprovisionamiento y la generación de informes sin intervención manual ni ejecuciones programadas de scripts. ## PREGUNTAS FRECUENTES ### 1. ¿Qué es la gestión de usuarios de Active Directory? La gestión de usuarios de AD implica tareas como la creación, modificación y eliminación de cuentas de usuario, así como la gestión de la pertenencia a grupos y los permisos para los recursos de red. Esto se hace normalmente utilizando herramientas como ADUC en un controlador de dominio para realizar funciones básicas, y gestión más avanzada u operaciones masivas utilizando PowerShell. Algunas herramientas de terceros como ADManager Plus ofrecen una interfaz basada en GUI y sin scripts [para ayudar a los administradores a gestionar los usuarios de AD](https://www.manageengine.com/latam/ad-manager/gestion-masiva-de-usuarios-de-active-directory.html?utm_source=admp&utm_medium=windows-powershell&utm_content=powershell-scripts-for-ad-user-management) con una [completa lista de funciones](https://www.manageengine.com/latam/ad-manager/caracteristicas.html).