Crear Usuarios en Forma Masiva y Con Atributos

No es una tarea habitual,  pero a veces y sobre todo cuando se crea un nuevo Dominio Active Directory, hay que ejecutar un alta masiva de muchas cuentas de usuario.
Inclusive es una muy buena práctica completar los atributos adicionales de cada uno, ya que esto puede facilitar enormemente posteriormente las búsquedas

Por lo tanto en esta demostración investigaremos y veremos cómo se puede hacer el proceso, ya que la creación manual de usuario por usuario sería en este caso lentísima, y ni que comentar si además hay que configurarle propiedades a cada uno

Además puede darse el caso de tener que cambiar desde un “Dominio viejo” a un “Dominio nuevo”. Para esto se pueden usar aplicaciones como ADMT (“Active Directory Migration Tool”), pero a veces lo único que se necesita es la creación de nuevas cuentas de usuario,  por ejemplo, para crear un Domino “espejo” del productivo

En general el proceso de creación de usuarios y sus propiedades adicionales es mucho más fácil hacerlo desde una aplicación de base de datos, o inclusive con una planilla de cálculo. El problema es cómo llevar toda esta información en forma rápida y eficiente a un Dominio

La aplicación de base de datos puede contener gran parte de la información que ha ingresado la división de Recursos Humanos, y convengamos que no tiene mucho sentido tener que volver a ingresarla manualmente

Para esta demostración, me basaré en que tenemos la información en una planilla de Excel, ya que tanto desde la misma como desde cualquier base de datos se pueden exportar los datos en formato CSV (“Comma Separated Value”)

El archivo CSV debe contener en la primera línea los nombres de los campos, y en cada una de las líneas siguientes cada registro con sus correspondientes valores

Una de las dificultades es conocer el nombre interno de los campos que usa Active Directory, así que mostraré todo el proceso desde averiguar los nombres, hasta el alta masiva de cuentas

Necesitaremos un Controlador de Dominio, donde he creado una Unidad Organizativa provisoria que yo he llamado “TestOU”, donde he creado una cuenta de usuario. A esta cuenta le he configurado valores arbitrarios en cada campo informativo para poder averiguar los nombres

En las siguientes capturas podemos observar los datos que he puesto

Comenzaremos exportando esta cuenta de usuario a un archivo CSV mediante la utilidad incluida en el sistema operativo llama CSVDE.EXE

El comando es:

CSVDE -f <NombreArchivo>.CSV

He creado una carpeta “NewUsers”, me he cambiado a la misma y sobre ésta pondré toda la información necesaria

En mi caso particular he ejecutado el comando usando como nombre de archivo “PrimerIntento.csv” y para que no exporte el Dominio completo, he puesto el foco sólo sobre la Unidad Organizativa “TestOU” con el modificador “-d”

csvde -f PrimerIntento.csv -d OU=TestOU,DC=ad,DC=guillermod,DC=com,DC=ar

¿Recuerda cómo importar un archivo CSV en Excel? por las dudas, pongo las pantallas

Como en este caso no me importan las fechas sino sólo los nombres de los campos, no modificaré ninguno de los tipos de datos

Observemos lo siguiente: no sólo ha exportado al usuario, sino además a la propia Unidad Organizativa
Además los campos son muchos, para que los vean con facilidad he copiado los nombres de los mismos sobre un área inferior con fondo amarillo

Con el modificador “-r ObjectClass=user” podemos hacer que exporte sólo las cuentas de usuario
Algo más a tener en cuenta por lo que he leído, aunque no lo muestro en las capturas: si ponemos “user” exportará las cuentas de usuario, y además las de máquina.
Otra posibilidad es poner “person”, en este caso no exporta las cuentas de máquina, pero incluye los objetos tipo “contact”
No hay nada perfecto 😉

Ahora si, sólo la cuenta de usuario

Si no deseamos que se exporten todos los campos, podemos informar cuáles necesitamos con el modificador “-l” (L minúscula) y la lista de campos
En mi caso he exportado los campos obligatorios para poder hacer luego la importación y algunos más

Obteniendo lo siguiente, ya mucho más fácil de interpretar

 

Vamos ahora dejando el tema exportación, y comencemos con lo que nos interesa que es la importación

Supongamos que desde la división de Recursos Humanos obtenemos los campos: Nombre, Iniciales, Apellido, y Departamento

Acá van a necesitar sus habilidades con Excel para mediante las convenciones de nombres que utilicen para los usuario, y sus habilidades en la concatenación de cadenas de caracteres, crear en forma rápida los datos que necesitamos

Por ejemplo yo he creado 5 cuentas, pero si fueran 500 o 5000 el procedimiento sería totalmente igual

Debemos guardar esta hoja de la planilla como archivo CSV para luego poder hacer la importación mediante CSVDE.EXE

Confirmaciones de Excel …

Teniendo ya toda la información, sólo resta importarla. Para esto utilizaremos nuevamente el comando CSVDE.EXE, pero esta vez indicando que vamos a importar información usando el modificador “-i” (CSVDE -i -f ImportUsers.csv)
Es importante verificar que el comando se completó exitosamente

Así que vamos a ver nuestra Unidad Organizativa, no olvidarse de hacer un refresco, ya que no lo hace automáticamente, y ya está 🙂

En todos ellos podemos observar que se han importado, además de las cuentas de usuario, el campo Departamento que habíamos incluido

Recuerdo que si quisiéramos modificar en forma masiva a los usuarios, simplemente podemos seleccionar a los que necesitemos y entrando en Propiedades, modificar casi todos los atributos que necesitemos

Como los usuarios que importamos no tienen contraseña asignada, quedan siempre en forma deshabilitada. Esto no hay solución pues no se pueden importar las contraseñas con CSVDE

Pero podemos, aún así, habilitarlos 🙂
No me pregunten el por qué, pero contrariando las políticas de cuentas del Dominio, que no dejan crear usuarios sin asignarle contraseña, usando este método se puede

 

Para finalizar, la creación masiva de cuentas de usuario no es algo que normamente tengamos que hacer diariamente, pero si en algún momento lo necesitamos, este procedimiento puede ahorrar muchísimo tiempo

Post a comment or leave a trackback: Trackback URL.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *