Creando usuarios en Active Directory

A menudo en los dominios los usuarios comparten muchas propiedades similares. Por ejemplo: los representantes del sector ventas pueden pertenecer a los mismos grupos de seguridad, iniciar sesión en el mismo rango de horas y tener carpetas de inicio y perfiles (como también carpetas compartidas) en el mismo servidor. Cuando se crea un nuevo usuario, simplemente se puede copiar de uno ya existente, en lugar de crear una cuenta en blanco y rellenar cada propiedad.

Ahora, que es una plantilla de usuario (template)? Es una cuenta de usuario genérica (previamente completada con propiedades comunes). Solamente alcanza con rellenar las propiedades comunes al sector y listo. Se recomienda que al crear un template de usuario, se configure el nombre con un guion bajo al principio (_), quedando por ejemplo de esta manera: _Marketing. Esto hará que queden todos los templates creados en la parte superior de la lista de usuarios de una OU.

No se debe iniciar sesión con las plantillas. Por lo que se recomienda que se deshabilite el usuario.

Usando comandos de AD y Excel

Lo primero que vamos a hacer es abrir un notepad y escribir:

dsadd user "cn=%1, ou=NombreOU, dc=Dominio, dc=Sufijo" - fn %2 -ln %3 -pwd P@ssw0rd -mustchpwd yes

Guardar el archivo con un nombre que puedan identificar para que sirve fácilmente , por ejemplo CrearUsuario.bat.

Ahora para crear un usuario que tenga como nombre Tania, como apellido Miller y que el nombre de usuario para iniciar sesión sea tmiller, se debe abrir una consola de comandos, navegar hasta la ruta donde se guardó el bat y escribir:

CrearUsuario tmiller Tania Miller

Fácil, no? Puede parecer que sí, pero… Se puede automatizar mas la tarea? Que pasa cuando son muchos usuarios a la vez? Y si están en distintas OUs? La solución a esto es crear usuarios en base a una planilla de excel. Esta planilla lo que debe contener es una lista de los nombres y apellidos de cada persona a la que se le deba crear un usuario.  

Bien… ahora partimos de una lista de usuarios creados en excel, de la siguiente manera:

A esta hoja la vamos a renombrar, por ejemplo como InfoDeUsuarios ya que contiene la info de los nombres, apellidos y a las OU a las que van a pertenecer. En este caso todos los usuarios van a estar debajo de la OU Principal “Usuarios” y van a estar distribuidos entre Marketing, Ventas, Desarrollo y HelpDesk (OUs secundarias).

En la siguiente hoja vamos a especificar los datos que necesitamos para poder armar el script final de la siguiente manera:

  • Nombre de dominio Contoso.com (Dominio y Sufijo)
  • En la columna Nombre de Usuario hay que escribir la siguiente función:
    
=CONCATENAR(IZQUIERDA(InfoDeUsuarios!A2;1);InfoDeUsuarios!B2;",")

Lo que hace esta función es armar el nombre de inicio de cada usuario, tomando la primer letra del nombre y el apellido.

  • En la columna OU Secundaria va la función:
=CONCATENAR("ou=";InfoDeUsuarios!C2;",")

Lo que hace es tomar el nombre de la OU Secundaria de la lista creada en la primer hoja del libro de excel (para este ejemplo se nombro como InfoDeUsuarios)

  • En la columna OU Principal va la función:
    
=CONCATENAR("ou=";InfoDeUsuarios!D2;",")

Toma el nombre de la OU Principal de la primer hoja. Quedando de la siguiente manera:

A esta hoja la vamos a renombrar como TodosLosDatos. En la tercer hoja vamos a escribir una única función que vamos a extender a todas las filas que correspondan (cada fila es un usuario):

=CONCATENAR(TodosLosDatos!A4;TodosLosDatos!B4;TodosLosDatos!C4;TodosLosDatos!D4;TodosLosDatos!E4;TodosLosDatos!F4;" ";"-fn";" ";InfoDeUsuarios!A4;" ";"-ln";" ";InfoDeUsuarios!B4;" ";"-pwd";" ";"P@ssw0rd";" ";"-mustchpwd";" ";"yes")

Esto va a recolectar todos los datos necesarios para poder armar cada línea de comando correctamente con todo lo que nosotros llenamos anteriormente para no tener que escribir uno por uno. El resultado de esta función es lo que vamos a copiar en un notepad y lo vamos a guardar como: AgregarUsuarios.bat.

Esta pagina si quieren la pueden nombrar como GuardarComoBat para tener una mejor referencia en el futuro. Ya con todos las líneas generadas y el archivo .bat guardado simplemente vamos a tener que situarnos donde este guardado el archivo y ejecutarlo como administrador. Con esto se van a crear todos los usuarios que estén en esa lista de manera automatizada.

Happy scripting!

Comments