Búsqueda de sitios web

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.

Artículos relacionados