[Powershell] Creando usuarios locales
Hoy se me ha presentado un pequeño reto en el trabajo, que ha sido crear múltiples usuarios en un equipo con Windows 7. Crearlos a mano habría sido factible pero un auténtico aburrimiento aparte del tiempo que ello conllevaría y por otro lado, en caso de tener que volver a hacerlo, sería perder el doble de tiempo.
Así pues me he puesto a darle un rato al powershell y me he creado un script que desde un fichero CSV me realiza la carga automáticamente en el equipo.
El fichero tiene dos únicos campos userid y password, que están en la primera linea del fichero, despues ya vienen los usuarios y sus passwords como tal, separados por una coma.
El script que he creado es el siguiente:
$Users = Import-Csv listado.csv
$Users | % {
$computer = [ADSI]"WinNT://."
$user = $computer.Create("User",$_.userid)
$user.setpassword($_.password)
$user.SetInfo()
$User.UserFlags[0] = $User.UserFlags[0] -bor 0x10040 #ADS_UF_DONT_EXPIRE_PASSWD 0x10000 y ADS_UF_PASSWD_CANT_CHANGE 0x40
$User.SetInfo()
$objGroup = [ADSI]"WinNT://./Users"
$objGroup.add("WinNT://./$user")
}
Si necesitas mas información sobre los posibles UserFlags los puedes encontrar en la MSDN