Cree usuarios de Active Directory desde CSV con PowerShell
Queremos crear nuevos usuarios de Active Directory en la organización. Podemos utilizar el asistente de creación de usuarios en Usuarios y Computadoras de Active Directory para crear los usuarios. ¿Qué pasa si necesitas crear más de 1000 usuarios? Hacerlo con el asistente llevará mucho tiempo. En este artículo, aprenderá cómo crear usuarios de Active Directory desde CSV con PowerShell.
Antes de comenzar a crear usuarios de Active Directory a partir de un archivo CSV
Digamos que necesitas un minuto para crear un nuevo usuario con el asistente. Cada usuario tardará un minuto. ¿Qué pasa si tienes que agregar mil nuevos usuarios? Haga los cálculos, 1000 usuarios * 1 minuto=1000 minutos. Son aproximadamente 16 horas. Demasiado tiempo para dedicarlo a crear nuevos usuarios, ¿verdad? ¿Qué pasaría si pudieras simplificar el proceso y hacerlo mucho más rápido en el tiempo?
En el artículo, usaremos los siguientes archivos:
- NewUsersSent.csv
La plantilla de hoja de cálculo que enviamos a RR.HH.
- NewUsersReceived.csv
La hoja de cálculo que recibimos de RR.HH.
- NewUsersFinal.csv
-
La versión final actualizada para importar.
- Add-NewUsers.ps1
El script de PowerShell que creará las cuentas de usuario.
Crear la plantilla CSV
Primero, debemos asegurarnos de tener una lista de los mil usuarios que necesitamos crear. La información más importante que necesitamos es el nombre y apellido. Sugerimos crear un archivo CSV y enviarlo a un usuario de la empresa.
Vamos a enviar el archivo CSV a Jane. Jane trabaja en el departamento de recursos humanos de la empresa EXOIP. Ella tiene la información sobre los mil usuarios que necesitan una nueva cuenta de usuario de AD. El archivo CSV que le enviamos a Jane es NewUsersSent.csv. Jane completará los datos, tal como se discutió, y nos enviará el archivo CSV.
Le dijimos a Jane que pusiera tanta información como fuera posible en los campos. Si no puede completar todos los campos, no hay nada de qué preocuparse. El más importante es el Nombre y el Apellido. También le dijimos que dejara vacíos los campos Contraseña y OU. ¿Por qué le dijimos eso?
Contraseña campo, dejándolo vacío porque el departamento de TI creará las contraseñas. Incluso si es una contraseña temporal. Cuando el usuario inicie sesión, aparecerá un mensaje para cambiar la contraseña.
campo OU, dejándolo vacío porque el departamento de TI completará la Unidad Organizativa (OU). Ahí es donde se crearán los nuevos usuarios de Active Directory (AD).
Editar el archivo CSV
Jane envió el archivo CSV con toda la información. Abramos el archivo NewUsersReceived.csv y echemos un vistazo.
Todo luce genial. Jane completó toda la información que necesitamos.
Nota: Busque el código de su país en la lista de códigos de países de Active Directory.
Generar contraseñas
Genere contraseñas para los usuarios y complete los campos de contraseña para cada usuario. Recomiendo generar contraseñas con el generador de contraseñas Manytools. Puede crear un máximo de 9999 contraseñas a la vez. Después de eso, copie y pegue las contraseñas en la columna Contraseña.
Complete la unidad organizativa (OU)
Inicie Usuarios y equipos de Active Directory (ADUC) y asegúrese de habilitar las Funciones avanzadas. Haga clic en el menú Ver y haga clic en Funciones avanzadas. Ahora que las funciones avanzadas están habilitadas, podemos continuar y crear la unidad organizativa en AD.
Podemos ver en el archivo CSV que los usuarios trabajarán en el departamento de TI. Entonces crearemos una unidad organizativa en Active Directory con el nombre IT.
Haga clic derecho en la unidad organizativa con el nombre TI y haga clic en Propiedades. Haga clic en la pestaña Editor de atributos. Busque el atributo nombre distinguido. Haga doble clic en él y copie el valor. El valor en mi ejemplo es OU=IT,OU=Users,OU=Company,DC=exoip,DC=local.
Coloque el valor en los campos debajo de la columna OU.
Cuando termine, guárdelo como un nuevo archivo CSV. Vaya a Archivo y haga clic en Guardar como. Asígnele el nombre de archivo NewUsersFinal.csv. Guárdelo como tipo CSV UTF-8 (delimitado por comas) (*.csv). Haga clic en el botón Guardar.
Se crea NewUsersFinal.csv.
Coloque NewUsersFinal.csv en la carpeta C:\Temp en el controlador de dominio o el servidor de administración.
Verifique el archivo CSV
Antes de usar el script, importe el archivo CSV en PowerShell. Es una excelente manera de comprobar si es legible y si está todo listo.
Es bueno saber sobre el delimitador
¿El delimitador se muestra como una coma o un punto y coma en el archivo CSV? Debe saber esto antes de utilizar el script de PowerShell en el siguiente paso. Si utiliza el punto y coma como carácter de separación en su archivo CSV, agregue el parámetro delimitador -Delimitador “;” a su cmdlet Import-Csv.
Ejecute PowerShell como administrador. Utilice el cmdlet Import-Csv para leer el archivo CSV. Si no puede leer el archivo CSV, elimine el parámetro -Delimiter. Será Importar-Csv “C:\Temp\NewUsersFinal.csv” | Formato-Tabla.
PS C:\> Import-Csv "C:\Temp\NewUsersFinal.csv" -Delimiter ";" | Format-Table
FirstName Initials Lastname Username Email StreetAddress City ZipCode State Country
--------- -------- -------- -------- ----- ------------- ---- ------- ----- -------
Max MF Fraser Max.Fraser Max.Fraser@exoip.com 21 Baker St London NW1 6XE GB
Piers PB Bower Piers.Bower Piers.Bower@exoip.com 21 Baker St London NW1 6XE GB
Kylie KD Davidson Kylie.Davidson Kylie.Davidson@exoip.com 21 Baker St London NW1 6XE GB
Richard RG Grant Richard.Grant Richard.Grant@exoip.com 21 Baker St London NW1 6XE GB
Boris BC Campbell Boris.Campbell Boris.Campbell@exoip.com 21 Baker St London NW1 6XE GB
Nicholas NM Murray Nicholas.Murray Nicholas.Murray@exoip.com 21 Baker St London NW1 6XE GB
Leonard LC Clark Leonard.Clark Leonard.Clark@exoip.com 21 Baker St London NW1 6XE GB
Ruth RD Dickens Ruth.Dickens Ruth.Dickens@exoip.com 21 Baker St London NW1 6XE GB
Jonathan JF Fisher Jonathan.Fisher Johnathan.Fisher@exoip.com 21 Baker St London NW1 6XE GB
Grace GR Rees Grace.Rees Grace.Rees@exoip.com 21 Baker St London NW1 6XE GB
Para obtener más información, lea Importar delimitador CSV PowerShell.
Prepare el script de PowerShell Agregar nuevos usuarios
Descargue el script Add-NewUsers.ps1 y guárdelo en la ruta C:\Scripts en el servidor de administración o el controlador de dominio.
La línea 5 es la ruta del archivo CSV. Cambie la ruta si coloca el archivo CSV en otra ruta. En nuestro ejemplo, es C:\Temp\NewUsersFinal.csv.
Línea 5, elimine el parámetro -Delimiter si tiene un carácter de separación de coma en lugar de punto y coma en su archivo CSV. En nuestro ejemplo, es el carácter de punto y coma.
La línea 8 es el nombre principal de usuario (UPN). Cambia el UPN por el tuyo. En nuestro ejemplo, es exoip.com.
Ejecute el script de PowerShell Agregar nuevos usuarios
Cambie la ruta del directorio a C:\Scripts\ y ejecute el script Add-NewUsers.ps1. El script se ejecutará y creará usuarios de Active Directory de forma masiva. Cuando termine, presione Entrar para salir de la pantalla.
PS C:\>cd C:\Scripts\
PS C:\Scripts> .\Add-NewUsers.ps1
The user account Max.Fraser is created.
The user account Piers.Bower is created.
The user account Kylie.Davidson is created.
The user account Richard.Grant is created.
The user account Boris.Campbell is created.
The user account Nicholas.Murray is created.
The user account Leonard.Clark is created.
The user account Ruth.Dickens is created.
The user account Jonathan.Fisher is created.
The user account Grace.Rees is created.
Press Enter to exit:Si el usuario ya existe en AD, verá lo siguiente.
PS C:\Scripts> .\Add-NewUsers.ps1
WARNING: A user account with username Max.Fraser already exists in Active Directory.
WARNING: A user account with username Piers.Bower already exists in Active Directory.
WARNING: A user account with username Kylie.Davidson already exists in Active Directory.
WARNING: A user account with username Richard.Grant already exists in Active Directory.
WARNING: A user account with username Boris.Campbell already exists in Active Directory.
WARNING: A user account with username Nicholas.Murray already exists in Active Directory.
WARNING: A user account with username Leonard.Clark already exists in Active Directory.
WARNING: A user account with username Ruth.Dickens already exists in Active Directory.
WARNING: A user account with username Jonathan.Fisher already exists in Active Directory.
WARNING: A user account with username Grace.Rees already exists in Active Directory.
Press Enter to exit:Echa un vistazo en ADUC. Los usuarios se crean correctamente en la unidad organizativa.
¿Le ayudó esto a crear usuarios de Active Directory desde CSV con PowerShell?
Sigue leyendo: Mueve de forma masiva usuarios de AD a otra unidad organizativa con PowerShell »
Conclusión
Aprendió a crear usuarios de Active Directory desde CSV con PowerShell. Primero, prepare el archivo CSV y asegúrese de que toda la información esté completa. Cuando tenga el archivo CSV final, importe el archivo CSV en PowerShell para verificar si es legible. Ajuste las dos líneas en el script Add-NewUsers.ps1, como se muestra en el artículo. Ejecute el script para crear los usuarios en AD. La última parte es verificar si los usuarios se crearon exitosamente en ADUC.
Disfrutaste este artículo? Si es así, es posible que le gusten los requisitos previos para instalar Exchange Server. No olvides seguirnos y compartir este artículo.