Documentos de Académico
Documentos de Profesional
Documentos de Cultura
El Script que usaremos va de la mano con un archivo .csv el cual estn ambos en
una carpeta la cual pueden descargar de:
https://mega.co.nz/#F!8ApyXJTB!OnPO29lREn2eLNSD9_7tqQ
Para editar el Script damos clic derecho, editar, desde nuestro server.
$lastname = $replace
}
Else
{
$lastname = $replace.substring(0,4)
}
# Create sAMAccountName according to this 'naming convention':
# <FirstLetterInitials><FirstFourLettersLastName> for example
# hhica
$sam = $_.Initials.substring(0,1).ToLower() + $lastname.ToLower()
Try
{ $exists = Get-ADUser -LDAPFilter "(sAMAccountName=$sam)" }
Catch { }
If(!$exists)
{
$i++
# Set all variables according to the table names in the Excel
# sheet / import CSV. The names can differ in every project, but
# if the names change, make sure to change it below as well.
$setpass = ConvertTo-SecureString -AsPlainText $_.Password -force
New-ADUser $sam -GivenName $_.GivenName -Initials $_.Initials `
-Surname $_.SN -DisplayName $_.DisplayName -Office $_.OfficeName `
-Description $_.Description -EmailAddress $_.Mail `
-StreetAddress $_.StreetAddress -City $_.L `
-PostalCode $_.PostalCode -Country $_.CO -UserPrincipalName $_.UPN `
-Company $_.Company -Department $_.Department -EmployeeID $_.ID `
-Title $_.Title -OfficePhone $_.Phone -AccountPassword $setpass
# Set an ExtensionAttribute
$dn = (Get-ADUser $sam).DistinguishedName
$ext = [ADSI]"LDAP://$dn"
If ($_.ExtensionAttribute1 -ne "" -And $_.ExtensionAttribute1 -ne $Null)
{
$ext.Put("extensionAttribute1", $_.ExtensionAttribute1)
$ext.SetInfo()
}
# Move the user to the OU you set above. If you don't want to
# move the user(s) and just create them in the global Users
# OU, comment the string below
Move-ADObject -Identity $dn -TargetPath $location
# Rename the object to a good looking name (otherwise you see
# the 'ugly' shortened sAMAccountNames as a name in AD. This
# can't be set right away (as sAMAccountName) due to the 20
# character restriction
$newdn = (Get-ADUser $sam).DistinguishedName
Rename-ADObject -Identity $newdn -NewName $_.CN
$output = $i.ToString() + ") Name: " + $_.CN + "
$output += $sam + " Pass: " + $_.Password
$output | Out-File $log -append
sAMAccountName: "
}
Else
{
"SKIPPED - ALREADY EXISTS OR ERROR: " + $_.CN | Out-File $log -append
}
}
"----------------------------------------" + "`n" | Out-File $log -append
}
# RUN SCRIPT
createUsers
#Finished
Debemos tener mucho cuidado cuando vayamos a comenzar a editar este script,
porque cualquier espacio mal dado, una mala tabulacin o borrar algo por error
inmediatamente nos puede generar error.
Ahora lo resaltado en esta seccin debemos comentarlo para evitar un error con la
extensin para esto simplemente agregamos el smbolo #.
Hasta este punto son las modificaciones del script como tal, ahora procedemos a
explicar la funcin del archivo .csv.
Este archivo contiene toda la informacin del usuario; en la primera lnea los
parmetros separados por comas y en la segunda lnea la informacin y
respuesta de dichos parmetros (informacin personal del usuario).
NOTA: podemos crearlo y ejecutarlo en un archivo de Excel para ms comodidad
con las columnas sin embargo recuerde que debe ser llamado exactamente igual,
al archivo que llama el script (Archivo .CSV delimitado por comas).
ATENCION!
Al guardar un archivo de Excel con la funcin guardar como y seleccionamos
.csv delimitado por comas, nos guardar el archivo pero delimitado con punto y
coma, el cual debemos abrir con un editor de texto (bloc de notas) y reemplazar
todos los ; por ,.