Usuário com melhor resposta
Script para criar usuarios no AD

Pergunta
-
Prezados,
Estou usando o seguinte script para criar contas no AD porem esta erro na primeira linha. Alguem saberia porque?
Set objExcel = CreateObject("Excel.Application")
Set objWorkbook = objExcel.Workbooks.Open ("D:\Scripts\NewUsers.xls")intRow = 2
Do Until objExcel.Cells(intRow,1).Value = ""
Can= objExcel.Cells(intRow, 1).Value
SamAccountName2= objExcel.Cells(intRow, 2).Value
Nome= objExcel.Cells(intRow, 3).Value
Nome2 = objExcel.Cells(intRow, 4).Value
Set objOU = GetObject("LDAP://ou=Teste,dc=sisema,dc=net")Set objUser = objOU.Create("User", "cn="&can)
objUser.Put "SamAccountName", SamAccountname2
objuser.put "givenName",nome
objuser.put "sn", nome2
objuser.setinfo
intRow = intRow + 1
Loop
objExcel.QuitAbraços,
Minier
Respostas
-
Prezados,
Estou usando o seguinte script para criar contas no AD porem esta erro na primeira linha. Alguem saberia porque?
Set objExcel = CreateObject("Excel.Application")
Set objWorkbook = objExcel.Workbooks.Open ("D:\Scripts\NewUsers.xls")intRow = 2
Do Until objExcel.Cells(intRow,1).Value = ""
Can= objExcel.Cells(intRow, 1).Value
SamAccountName2= objExcel.Cells(intRow, 2).Value
Nome= objExcel.Cells(intRow, 3).Value
Nome2 = objExcel.Cells(intRow, 4).Value
Set objOU = GetObject("LDAP://ou=Teste,dc=sisema,dc=net")Set objUser = objOU.Create("User", "cn="&can)
objUser.Put "SamAccountName", SamAccountname2
objuser.put "givenName",nome
objuser.put "sn", nome2
objuser.setinfo
intRow = intRow + 1
Loop
objExcel.QuitAbraços,
Minier
Ederson C. Ferreira Analista de Infraestrutura CPM Braxis - Capgemeni
- Marcado como Resposta Fábio JrModerator terça-feira, 19 de fevereiro de 2013 13:14
Todas as Respostas
-
Boa Noite,
Criando com o DSADD
Hoje vou falar sobre uma tarefa que em princípio é bem simples: a criação de usuários no Active Directory. Criar uns poucos usuários é uma tarefa realmente muito simples, pois a única coisa que você precisa é abrir o console de administração do Active Directory, selecionar o local onde deseja criar o usuário e depois de fornecer seu nome, sobrenome, logon, senha e ajustar uns poucos atributos e o usuário estará criado. Apesar de simples, essa tarefa pode se tornar cansativa se você precisar criar, por exemplo, quinze usuários.A dica para tornar essa tarefa mais dinâmica é criar o usuário através do comando DSADD. O DSADD permite que você crie objetos no AD, incluindo usuários, computadores, grupos, unidades organizacionais, contatos e quotas.
Vamos à parte prática.
Supondo que o nome do seu domínio seja “Empresa.local” e que você precisa criar os objetos dentro de uma OU chamada “Funcionarios”, a sua linha de comando deve ficar parecida com seguinte sintaxe:
>dsadd user “CN=Carlos Lauff,OU=Funcionarios",DC=Empresa,DC=local” –UPN carloslauff@empresa.local –SAMID carloslauff –PWD 1q2w3e. –FN Carlos –LN Lauff
Vou detalhar o comando acima:
O comando DSADD user indica para o AD o tipo de objeto que você está criando. No nosso caso um usuário.
Em seguida definimos o local que o objeto será criado, atravé do seu Nome Distinto(também chamado de Distinct Name ou simplesmente DN) representado por uma string LDAP. Essa string possui os seguintes parâmetros: CN (Common Name ou Nome Comum do objeto), OU (representa a unidade organizacional onde o objeto será criado) e DC(significa Domain Component, ou componente de nome de domínio. Repare que no nosso caso como o domínio se chama “Empresa.local” o nome é dividido em dois componentes “Empresa” e “local”). O local onde o objeto é criado é sempre informado do seu nível mais inferior para o superior. Por exemplo, se o local de criação do objeto fosse uma unidade organizacional chamada “RJ” dentro da unidade organizacional “Funcionarios” a string ficaria “CN=Carlos Lauff,OU=RJ,OU=Funcionarios,DC=Empresa,DC=local”.
A partir desse ponto são declarados parâmetros para preencher alguns atributos básicos do objeto. Para uma lista completa dos parâmetros que podem ser declarados, consulte a ajuda através do comando “DSADD user /?”. Usei aqui uma quantidade mínima de parâmetros que já permite criar um usuário viável. Vou discriminá-los abaixo:
-UPN representa o User Principal Name. É o nome de logon usado pelo usuário em versões posteriores ao Windows 2000.
-SAMID representa o nome de logon do usuário em versões anteriores ao Windows 2000.
-PWD define a senha do usuário. Se você não quiser declarar a senha, pode usar o caractere * (asterísco) e a você será solicitado a digitar a senha do usuário.
-FN e –LN definem os atributos “Nome” e “Sobrenome” do usuário, respectivamente.
Certo, eu sei que você deve estar pensando “Tanto trabalho pra digitar tudo isso e criar UM usuário?” – mas não desista ainda da idéia. Pense que, para criar os quinze usuários que eu sugeri no cenário, bastaria você criar um arquivo .BAT copiando e colando a linha que cria o primeiro usuário e mudar somente os parâmetros variáveis (CN, UPN, SAMID, FN e LN). Ao executar a BAT seus usuários já estariam criados.
Experimente criar os usuários pelo console e pela linha de comando e verifique quanto tempo você gastou no total.
* Ajude a organizar melhor o Fórum, dando Feedback sobre a dúvida solicitada, e marcando como Útil e como Resposta, a postagem dos colaboradores que resolveram o seu caso, ou foram úteis *
- Marcado como Resposta Wagner dos Santos VasconcellosModerator domingo, 3 de junho de 2012 21:05
- Não Marcado como Resposta Fábio JrModerator terça-feira, 19 de fevereiro de 2013 13:14
-
Prezados,
Estou usando o seguinte script para criar contas no AD porem esta erro na primeira linha. Alguem saberia porque?
Set objExcel = CreateObject("Excel.Application")
Set objWorkbook = objExcel.Workbooks.Open ("D:\Scripts\NewUsers.xls")intRow = 2
Do Until objExcel.Cells(intRow,1).Value = ""
Can= objExcel.Cells(intRow, 1).Value
SamAccountName2= objExcel.Cells(intRow, 2).Value
Nome= objExcel.Cells(intRow, 3).Value
Nome2 = objExcel.Cells(intRow, 4).Value
Set objOU = GetObject("LDAP://ou=Teste,dc=sisema,dc=net")Set objUser = objOU.Create("User", "cn="&can)
objUser.Put "SamAccountName", SamAccountname2
objuser.put "givenName",nome
objuser.put "sn", nome2
objuser.setinfo
intRow = intRow + 1
Loop
objExcel.QuitAbraços,
Minier
Ederson C. Ferreira Analista de Infraestrutura CPM Braxis - Capgemeni
- Marcado como Resposta Fábio JrModerator terça-feira, 19 de fevereiro de 2013 13:14
-
Usei desse link e não teve erro
http://www.fatorconhecimento.com/2014/08/como-automatizar-criacao-de-diversas.html
Caso dê certo ou tenha alguma dúvida entre em contato negocios.ng@outlook.com
- Sugerido como Resposta Marcos Roberto de Lima quinta-feira, 14 de setembro de 2017 22:00