Cómo automatizar la creación de usuarios del dominio mediante un script

Rafa Morales 25 Abril 2013
3min
0
Command line from Windows

Cuando en nuestro dominio tenemos que crear una gran número de usuarios, lo mejor es que prepararemos un script desde línea de comandos que nos automatice esta tarea. Os proponemos un ejemplo básico el cuál podéis adaptar a vuestro caso particular.

 

Script de creación de usuarios

Crearemos el archivo "nuevo_usuario.cmd" con el siguiente contenido. Recordar que:

  • Mediante %1 estaremos accediendo al primer parámetro de la llamada, y así sucesivamente.
  • Con el carácter ^ dividimos el comando en diferentes líneas, por comodidad visual en este caso.
  • Con la palabra reservada REM escribiremos comentarios.

 

REM Crear el usuario
net user %1 %2 /add /fullname:%3

REM Mover el usuario de una Unidad Organizativa a otra
dsmove "CN=%1,CN=Users,DC=dominio,DC=local" ^
  -newparent "OU=empleados,DC=dominio,DC=local"

REM Añadir el usuario a un grupo existente
dsmod group "CN=%4,OU=empleados,DC=dominio,DC=local" ^
  -addmbr "CN=%1,OU=empleados,DC=dominio,DC=local"

REM Crear la carpeta personal de usuario
md "d:\empleados\%1"

REM Modificar los permisos de la carpeta personal
icacls "d:\empleados\%1" ^
  /grant:r "dominio\Admins. del dominio":(OI)(CI)(F) ^
  "System":(OI)(CI)(F) ^
  "dominio\%1":(OI)(CI)(M,RX) ^
  /inheritance:r

REM Compartir la carpeta personal
net share %1="d:\empleados\%1" ^
  /Grant:"Admins. del Dominio",FULL /Grant:"%1",CHANGE

 

Por tanto, ejecutaremos el script de la siguiente manera:

nuevo_usuario.cmd usuario miclave "Nombre Apellido1 Apellido2" grupo 

Donde los 4 parámetros que le pasaremos son:

  1. Login del usuario (no utilizar espacios en blanco).
  2. Contraseña, tendremos encuenta el nivel de complejidad utilizado en el dominio (no utilizar espacios en blanco).
  3. Nombre completo, encerrado entre comillas dobles para poder utilizar espacios en blanco.
  4. Grupo en el que incluiremos al usuario y que ya existe en el dominio (no utilizar espacios en blanco).

 

Os enlazamos la ayuda de los comandos ejecutados:

 

Script de creación de usuarios por lotes

Podemos crear otro script que utilizando el script anterior cree todos los usuarios de manera masiva. El contenido del archivo que llamaremos "nuevos_usuarios_masivo.cmd" será el que indicamos a continuación. Situaremos los dos ficheros en la misma carpeta.

cmd /c nuevo_usuario.cmd usuario1 miclave1 "Nombre Apellido1 Apellido2" grupo
cmd /c nuevo_usuario.cmd usuario2 miclave2 "Nombre Apellido1 Apellido2" grupo