Creating a Large Number of Users AD Environment

Leave a comment

July 13, 2011 by Rakesh Boraiah


Problem:

You want to create a large number of user objects, either for testing purposes or to initially populate Active Directory with your employee, customer, or student user accounts.

Solution:

The following examples will create 1,000 users in the rallencorp.com domain under the Bulk OU. The password is set, but no other attributes are configured. You can modify the examples to populate whatever attributes you need.

Using a command-line interface

> for /L %i in (1,1,1000) do dsadd user cn=User%i,ou=bulk,dc=rallencorp,dc=com -pwd[RETURN]
User%i

Using VBScript:

This code creates a large number of users with incremented user names
‘ e.g. User1, User2, User3, ….
‘ —— SCRIPT CONFIGURATION ——
intNumUsers = 1000 ‘ Number of users to create
strParentDN = “” ‘ e.g. ou=bulk,dc=emea,dc=rallencorp,dc=com
‘ —— END CONFIGURATION ———

‘ Taken from ADS_USER_FLAG_ENUM
Const ADS_UF_NORMAL_ACCOUNT = 512

set objParent = GetObject(“LDAP://” & strParentDN)
for i = 1 to intNumUsers
strUser = “User” & i
Set objUser = objParent.Create(“user”, “cn=” & strUser)
objUser.Put “sAMAccountName”, strUser
objUser.Put “userAccountControl”, ADS_UF_NORMAL_ACCOUNT
objUser.SetInfo
objUser.SetPassword(strUser)
objUser.AccountDisabled=FALSE
objUser.SetInfo
WScript.Echo “Created ” & strUser
next
WScript.Echo “”
WScript.Echo “Created ” & intNumUsers & ” users”

Discussion:

Using ADSI and even the new DS command line utilities on Windows Server 2003, you can create hundreds and even thousands of users easily and quickly. I ran both the CLI and VBScript solutions in a test domain, which create 1,000 user objects, on a single processor machine. The VBScript solution took less than 1.5 minutes and the CLI solution took less than 5 minutes. Admittedly, they are not populating very many attributes, but it shows that you can quickly populate Active Directory with user accounts very easily. You can also modify the examples to pull from a data source, such as an employee database, and use real data.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: