Usuário com melhor resposta
Script de criação de Usuários no AD

Pergunta
-
Olá, bom dia.
Bom, o cenário é o seguinte:
Tenho uma lista com cerca de 2000 usuários, nessa lista possuo 3 informações: Nome completo do usuário, CPF e Número de Matrícula. Preciso que os Números de Matrículas sejam usados como login e o CPF como senha, porém quando executo meu script ele da um erro e importa apenas 1 usuário (neste caso o "Fulano Pereira Moya").
Gostaria que o programa importasse todos os usuários.
Segue Print do erro e da lista.O SCRIPT QUE ESTOU USANDO É O SEGUINTE:
' UserSpreadsheet .vbs
' Sample VBScript to create User accounts from a spreadsheet
' Author Guy Thomas http://computerperformance.co.uk/
' Version 4.6 - June 2005
' ------------------------------------------------------'
Option Explicit
Dim objRootLDAP, objContainer, objUser, objShell
Dim objExcel, objSpread, intRow
Dim strUser, strOU, strSheet
Dim strCN, strSam, strFirst, strLast, strPWD
' -------------------------------------------------------------'
' Important change OU= and strSheet to reflect your domain
' -------------------------------------------------------------'
strOU = "OU=Temp ," ' Note the comma
strSheet = "c:\Scripts2\script3.xls"
' Bind to Active Directory, Users container.
Set objRootLDAP = GetObject("LDAP://rootDSE")
Set objContainer = GetObject("LDAP://" & strOU & _
objRootLDAP.Get("defaultNamingContext"))
' Open the Excel spreadsheet
Set objExcel = CreateObject("Excel.Application")
Set objSpread = objExcel.Workbooks.Open(strSheet)
intRow = 3 'Row 1 often contains headings
' Here is the 'DO...Loop' that cycles through the cells
' Note intRow, x must correspond to the column in strSheet
Do Until objExcel.Cells(intRow,1).Value = ""
strSam = Trim(objExcel.Cells(intRow, 1).Value)
strCN = Trim(objExcel.Cells(intRow, 2).Value)
strFirst = Trim(objExcel.Cells(intRow, 3).Value)
strLast = Trim(objExcel.Cells(intRow, 4).Value)
strPWD = Trim(objExcel.Cells(intRow, 5).Value)
' Build the actual User from data in strSheet.
Set objUser = objContainer.Create("User", "cn=" & strCN)
objUser.sAMAccountName = strSam
objUser.givenName = strFirst
objUser.sn = strLast
objUser.SetInfo
' Separate section to enable account with its password
objUser.userAccountControl = 512
objUser.pwdLastSet = 0
objUser.SetPassword strPWD
objUser.SetInfo
'On Error GoTo TrataErro
On Error Resume Next
intRow = intRow + 1
Loop
objExcel.Quit
WScript.Quit
--------------------------
OBS. O Primeiro e Segundo nome são desnecessários, preciso apenas do nome completo, matrícula(login) e cpf(senha).
SÓ PRECISO PASSAR A LISTA COMPLETA PARA O AD.
Conto com a ajuda de vocês.
Abraço. Desde já agradeço.
Att, Marcos V. Nunes- Movido Paul Haro quarta-feira, 4 de janeiro de 2012 14:53 Fórum incorreto (De:Windows Server 2008)
Respostas
-
Seu dominio tem algum requisito de Senha?
Se o dominio requer complexidade na senha esta deverá ter pelo menos 3 entre os 4 tipos de caracteres (maiusculas,minusculas,numeros,simbolos). Leve em conta também o tamanho da senha.
Fábio de Paula Junior- Marcado como Resposta Marcos V. Nunes quinta-feira, 5 de janeiro de 2012 15:51
Todas as Respostas
-
Marcos,
Pode indicar qual é o código da linha de número 48 no seu script?
Para saber o numero da linha abra seu script no bloco de notas posicione o cursor em alguma linha e aperte ctrl+G (quebra automatica de linha deve estar desabilitada), será indicado o número da linha que você está.
Fábio de Paula Junior -
Olá Fabio, bom dia.
A linha 48 é:
objUser.SetPassword strPWDO Script está importando, mas só o primeiro usuário. Mesmo com esse erro.
Acho que tem que criar algum loop, mas não tenho conhecimento pra fazer isto, peguei esse script aqui no fórum mesmo. Se alguém conhecer algum que me atenda, por favor compartilhe.
Abraço.
-
Seu dominio tem algum requisito de Senha?
Se o dominio requer complexidade na senha esta deverá ter pelo menos 3 entre os 4 tipos de caracteres (maiusculas,minusculas,numeros,simbolos). Leve em conta também o tamanho da senha.
Fábio de Paula Junior- Marcado como Resposta Marcos V. Nunes quinta-feira, 5 de janeiro de 2012 15:51
-
-
-
-