Creating users through the AD Users and
Computers snap-in is a very easy process, but you’ll frequently face the
situation where you need to create accounts for a whole group of people
at once. There’s no need for this to be a time consuming process for
you though, and we’ve done all the heavy lifting so you don’t have to.
We’ve just got a list of new employees from the HR Department, and they’ve been kind enough to give it to us in an excel format.
The first thing we are going to do is save the file as a .csv, and to do that, we click on the Office Button and select Save As.
We’re going to name our file users.csv, and make sure that we pick CSV (Comma delimited) in the Save as type box, and then click Save.
Next we’ll create a new text document on the server where we’ll be doing the user creation.
We’ll then copy the following into our new text document:
$objOU=[ADSI]“LDAP://OU=People,DC=sysadmingeek,DC=com”In the first line, make sure that you enter the correct information for your domain and the OU where you are creating the users.
$dataSource=import-csv “users.csv”
foreach($dataRecord in $datasource) {
$cn=$dataRecord.FirstName + ” ” + $dataRecord.LastName
$sAMAccountName=$dataRecord.FirstName + “.” + $dataRecord.LastName
$givenName=$dataRecord.FirstName
$sn=$dataRecord.LastName
$sAMAccountName=$sAMAccountName.ToLower()
$displayName=$sn + “, ” + $givenName
$userPrincipalName=$sAMAccountName + “@sysadmingeek.com”
$objUser=$objOU.Create(“user”,”CN=”+$cn)
$objUser.Put(“sAMAccountName”,$sAMAccountName)
$objUser.Put(“userPrincipalName”,$userPrincipalName)
$objUser.Put(“displayName”,$displayName)
$objUser.Put(“givenName”,$givenName)
$objUser.Put(“sn”,$sn)
$objUser.SetInfo()
$objUser.SetPassword(“P@assw0rd”)
$objUser.psbase.InvokeSet(“AccountDisabled”,$false)
$objUser.SetInfo()
}
We then want to save the file as a PowerShell script, so we change the Save as type: to All Files (*), and name it PSusersScript.ps1.
Now we need to prep PowerShell to run scripts. You can launch PowerShell by clicking on the shortcut in the taskbar, or by typing PowerShell in the quick search box.
We need to change the Execution Policy to allow scripts to be run remotely, so we type
set-executionpolicy remotesignedWhen prompted, we type Y and then hit enter to execute.
Now that we’ve allowed the script to be run, we need to place both the users.csv and the PSusersScript.ps1 files in our folder for execution. Since the PowerShell prompt naturally comes up to the root user folder, and we are logged on as Administrator, we are going to place them in the C:UsersAdministrator folder. When both files are in the folder, we right-click on the PSusersScript.ps1 file and choose Run with PowerShell.
If we take a look in AD Users and Computers, you will now see all those new users you just created.
The new users will be created in the lastname.firstname format, but the script could easily be altered to your need. Now that you’ve already created the script, all you have to do in the future is to place your list of users in the C:UsersAdministrator folder and run the PowerShell script. Easy!
0 comments:
Post a Comment