使用.CSV导入将批量用户添加到Active Directory?

时间:2011-05-16 07:39:30

标签: csv vbscript active-directory

您好,感谢您查看我的问题。

我是AD新手,需要帮助将批量用户导入AD。

这是我要导入的csv的链接;别担心,这都是随机数据,没有存储个人信息。

http://www.mediafire.com/?s2j37lsps83o86s

谢谢!

2 个答案:

答案 0 :(得分:2)

更新:

使用PowerShell进行批量用户CSV导入:http://www.morgantechspace.com/2014/04/Create-Bulk-AD-Users-from-CSV-using-Powershell-Script.html

VBScript:

' CreateBulkADUsersFromCSVFile.vbs
' Sample VBScript to create a AD Users from CSV file .
' Author: http://www.morgantechspace.com/
' ------------------------------------------------------' 
Option Explicit 

' Variables needed for LDAP connection 
Dim objRootLDAP 
Dim objContainer 

' Variables needed for CSV File Information
Dim varFileName
Dim objFSO
Dim objFile

' Holding variables for user information import from CSV file 
Dim varSamAccountName,varFirstName,varLastName
Dim newUserFields 

Dim objNewUser 
Dim varDomain 

Const ForReading = 1

' Modify this name to match your company's AD domain 
varDomain="workdomain.local" 

' Create a connection to the Active Directory Users container. 
Set objRootLDAP = GetObject("LDAP://rootDSE") 

' You can give your own OU like LDAP://OU=TestOU instead of LDAP://cn=Users
Set objContainer = GetObject("LDAP://cn=Users," & objRootLDAP.Get("defaultNamingContext")) 

' Specify the csv file full path.
varFileName = "C:\Users\Administrator\Desktop\NewUsers.csv"

' Open the file for reading.
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.OpenTextFile(varFileName, ForReading)

' Read the first line - csv columns -not needed for our proceess
objFile.ReadLine

' Skip the error while creating new user...(i.e- user already exists)
on error resume next

' Read the file and create new user.
Do Until objFile.AtEndOfStream
    ' Splits prioperty values.
    newUserFields = Split(objFile.ReadLine,",")
    varSamAccountName = newUserFields(0)
    varFirstName = newUserFields(1) 
    varLastName = newUserFields(2) 


' Create new User account 
Set objNewUser = objContainer.Create("User","cn="&varFirstName&" "&varLastName) 

objNewUser.put "sAMAccountName",lcase(varSamAccountName) 
objNewUser.put "givenName",varFirstName 
objNewUser.put "sn",varLastName 
objNewUser.put "UserPrincipalName",lcase(varSamAccountName)&"@"&varDomain 
objNewUser.put "DisplayName",varFirstName&" "&varLastName 
objNewUser.put "name",lcase(varSamAccountName) 
objNewUser.put "description","This user was created from csv file using vbscript"

objNewUser.SetInfo 
objNewUser.Put "pwdLastSet", 0 

' Enable the user account 
objNewUser.AccountDisabled = FALSE
objNewUser.SetInfo 
Loop

MsgBox("Active Directory users created successfully from CSV file using VBScript.")

WScript.Quit  

答案 1 :(得分:0)

您要求的是以自动方式处理此任务的脚本/程序。刚进来并要求人们为你做你的工作是不赞成的,因为这个网站真的专注于那些需要帮助他们正在做的事情的人。

理想情况下,您会使用您正在处理的代码发布您的问题,以及出现了什么问题;不只是请别人为你写一个程序。

我怀疑如果你不改变问题,它将/应该被删除。