Создание пользователей в AD из файла с записью результатов в лог

Option explicit
Dim objOU
Dim objUser
Dim objGroup
Dim objFSO
Dim objTextFile
Dim TxtIn
Dim strNextLine
Dim i
Dim TxtFile
Dim objFile			
Dim message			
Dim objData1		
Dim objData2		
Dim LogFile
Dim LogFolder

LogFolder = "C:\fso"
LogFile = "C:\fso\logFile.txt"
Const ForWriting = 2
Const ForAppending = 8

ReadUsers

Do Until objTextFile.AtEndOfStream

strNextLine = objTextFile.Readline
TxtIn = Split(strNextLine , ",")
message="Creating user " & TxtIn(1) & " " & Now
 
Set objOU = GetObject("LDAP://OU=LabOU,dc=domain,dc=ru")
Set objUser = objOU.Create("User", "cn="& TxtIn(0))
objUser.Put "sAMAccountName", TxtIn(0)
objUser.Put "givenName", TxtIn(1)
objUser.Put "sn", TxtIn(2)
objUser.Put "physicalDeliveryOfficeName", TxtIn(3)
objUser.Put "telephoneNumber", TxtIn(4)
objUser.SetInfo

Set objGroup = GetObject _
 ("LDAP://CN="& TxtIn(5) & ",cn=users,dc=domain,dc=ru")
objGroup.add _
 "LDAP://cn="& TxtIn(0) & ",ou=LabOU,dc=domain,dc=ru"
 LogAction
Loop
WScript.Echo("all done")

Sub ReadUsers
TxtFile = "C:\MoreUsersAndGroups.txt"
Const ForReading = 1
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objTextFile = objFSO.OpenTextFile _
    (TxtFile, ForReading)
End Sub

Sub LogAction
If objFSO.FolderExists(LogFolder) Then
	If objFSO.FileExists(LogFile) Then
		Set objFile = objFSO.OpenTextFile(LogFile, ForAppending)
		objFile.WriteBlankLines(1)
		objFile.Writeline message
		objFile.Writeline  objData1
	    objFile.Writeline objData2
	    objFile.Close
	Else
		Set objFile = objFSO.CreateTextFile(LogFile)
		objFile.Close
		Set objFile = objFSO.OpenTextFile(LogFile, ForWriting)  
		objfile.writeline message
		objFile.Writeline  objData1
	    objFile.Writeline objData2
	    objFile.Close
	End If
Else
	Set objFolder = objFSO.CreateFolder(LogFolder)
	Set objFile = objFSO.CreateTextFile(LogFile)
		objFile.Close
		Set objFile = objFSO.OpenTextFile(LogFile, ForWriting)  
		objfile.writeline message
		objFile.Writeline  objData1
	    objFile.Writeline objData2
	    objFile.Close
End If

End Sub 
Интересное на сайте: 
0
Голосов пока нет

Комментарии

Советую воспользоваться утилитой "Active Directory Bulk Operations". Программа позволяет пакетно создавать и редактировать учетные записи пользователей, а так же копировать учетные записи с сохранением членства в группах и полной иерархией организационных единиц в другой домен! Скачать можно тут: http://www.sysadminsoft.ru/active-directory-bulk-operations

Оставить комментарий