none
Midificar usuarios no AD RRS feed

  • Pergunta

  • Ola,

    Tenho uma planilha em excel com os dados de todos os usuarios e gostaria de um script para poder a partir dessa planilha, comparar login da planilha com login do AD e modificar os campos do AD de acordo com o que esta na planilha.

     

     

    Obrigado.

    segunda-feira, 16 de julho de 2007 12:27

Respostas

  •  

    Desculpe a demora, tava meio enrolado...

     

    Segue script para atualização de dados de usuários no AD, via arquivo CSV.

     

    OBS.: O script vai atualizar os dados dos usuários constantes no mesmo, substituindo o conteúdo no AD pelo do CSV, portanto tenha certeza que os dados estão corretos no csv antes de rodar o script.

     

    Code Snippet

    ' - - - - Atualização de dados AD via CSV
    ' - - - - By O Filipe -
    jfjatoba@gmail.com

    Option Explicit


    Dim fs, objTextFile, arrStr, login, nome, ende, tel, cel, des, cid, User, arquivo


    ' - - - - Altere aqui o caminho o arquivo csv, se estiver na mesma pasta que o script basta colocar o nome, se não, ponha o caminho completo.
    arquivo = "teste.csv"


    set fs=CreateObject("Scripting.FileSystemObject")
    set objTextFile = fs.OpenTextFile(arquivo)
    objTextFile.SkipLine


    Do while NOT objTextFile.AtEndOfStream
     arrStr = split(objTextFile.ReadLine,";")
     login = replace(lcase(arrStr(0)), chr(34), "")
     nome = replace(arrStr(1), chr(34), "")
     ende = replace(arrStr(2), chr(34), "")
     tel = replace(arrStr(3), chr(34), "")
     cel = replace(arrStr(4), chr(34), "")
     des = replace(arrStr(5), chr(34), "")
     cid = replace(arrStr(6), chr(34), "")


    ' - - - - Altere aqui os DC, para o seu domínio. Ex. My.com.br, será:  dc=MY,dc=COM,dc=BR, se os usuáios estiverem em uma OU, substitua o_
    ' - - - - cn=Users, por DC=NOME DA OU.
     set User = GetObject("
    LDAP://cn="&login&",cn=Users,dc=MY,dc=COM")


     User.Put "DisplayName", nome
     User.Put "streetAddress", ende
     User.Put "Description", des
     User.Put "l", cid
     User.Put "homePhone", tel
     User.Put "mobile", cel
     User.SetInfo
    Loop


    objTextFile.Close
    set objTextFile = Nothing
    set fs = Nothing
    set arrStr = Nothing
    set login = Nothing
    set nome = nothing
    set ende = nothing
    set tel = nothing
    set cel = nothing
    set des = nothing
    set cid = nothing
    set User = nothing


    Wscript.Quit

     

     

    quinta-feira, 19 de julho de 2007 17:02
    Moderador

Todas as Respostas

  •  

    Luiz...

     

    O primeiro passo é postar por favor a strutura do seu xls.  Tipo:

     

    login          | FSNome        | LSnome        |    Grupos    | TS 

    -------------------------------------------------------------------------------

    user01      | User 1            | Primeiro        |A;B;E           | SIM

    user02      | JOSE             | SILVA            |A;C;E           | NÃO

    user03      | JOSE             | OUTRO          |A;B;E           | SIM

     

     

    Tende... posta ae...

     

     

    o.0

    segunda-feira, 16 de julho de 2007 17:50
    Moderador
  • É um arquivo extensão CSV separado por ";" com as seguintes colunas:

     

    Login ; Nome ; Endereco ; Telefone ; Celular ; Descricao ; Cidade

     

     

    Obrigado.

    segunda-feira, 16 de julho de 2007 18:29
  •  

    Desculpe a demora, tava meio enrolado...

     

    Segue script para atualização de dados de usuários no AD, via arquivo CSV.

     

    OBS.: O script vai atualizar os dados dos usuários constantes no mesmo, substituindo o conteúdo no AD pelo do CSV, portanto tenha certeza que os dados estão corretos no csv antes de rodar o script.

     

    Code Snippet

    ' - - - - Atualização de dados AD via CSV
    ' - - - - By O Filipe -
    jfjatoba@gmail.com

    Option Explicit


    Dim fs, objTextFile, arrStr, login, nome, ende, tel, cel, des, cid, User, arquivo


    ' - - - - Altere aqui o caminho o arquivo csv, se estiver na mesma pasta que o script basta colocar o nome, se não, ponha o caminho completo.
    arquivo = "teste.csv"


    set fs=CreateObject("Scripting.FileSystemObject")
    set objTextFile = fs.OpenTextFile(arquivo)
    objTextFile.SkipLine


    Do while NOT objTextFile.AtEndOfStream
     arrStr = split(objTextFile.ReadLine,";")
     login = replace(lcase(arrStr(0)), chr(34), "")
     nome = replace(arrStr(1), chr(34), "")
     ende = replace(arrStr(2), chr(34), "")
     tel = replace(arrStr(3), chr(34), "")
     cel = replace(arrStr(4), chr(34), "")
     des = replace(arrStr(5), chr(34), "")
     cid = replace(arrStr(6), chr(34), "")


    ' - - - - Altere aqui os DC, para o seu domínio. Ex. My.com.br, será:  dc=MY,dc=COM,dc=BR, se os usuáios estiverem em uma OU, substitua o_
    ' - - - - cn=Users, por DC=NOME DA OU.
     set User = GetObject("
    LDAP://cn="&login&",cn=Users,dc=MY,dc=COM")


     User.Put "DisplayName", nome
     User.Put "streetAddress", ende
     User.Put "Description", des
     User.Put "l", cid
     User.Put "homePhone", tel
     User.Put "mobile", cel
     User.SetInfo
    Loop


    objTextFile.Close
    set objTextFile = Nothing
    set fs = Nothing
    set arrStr = Nothing
    set login = Nothing
    set nome = nothing
    set ende = nothing
    set tel = nothing
    set cel = nothing
    set des = nothing
    set cid = nothing
    set User = nothing


    Wscript.Quit

     

     

    quinta-feira, 19 de julho de 2007 17:02
    Moderador
  • BLZ,

     

     

    Muito obrigado,,,só fiz umas pequenas alterações para se adaptar as minhas condições e funcionou 100%.

     

    Valeu mesmo pela força....

    segunda-feira, 23 de julho de 2007 20:52
  •  

    =D blz...

     

    Um abraço...

     

    E não esqueça de classificar....

     

     

     

    o.0

    segunda-feira, 23 de julho de 2007 21:08
    Moderador
  • Filipe,

    Quando estou criando este script e rodando esta dando erro nesta linha:

     set User = GetObject("LDAP://cn="&login&",cn=Users,dc=MY,dc=COM")

    Pois na minha estrutura de AD contem OU=users,ou=localidade,dc=empresa,dc=local, preciso saber como preencho esta linha corretamente. E outro detalhe é o seguinte, tem como utilizar um arquivo XLS para atualizar estes dados??

    Aguardo retorno.

    Obrigado

    Eduardo Mitre

    quarta-feira, 14 de julho de 2010 15:16
  • Dudu,


    é só ir adicionando o caminho inverso das suas OUs, ex:

    Caminho normal:  AD> meudom.local > RJ > Financeiro > usuarios > fulano

    Então o DS vai ser: 

    cn=fulano, ou=usuarios, ou=financeiro, ou=rj, dc=meudom, dc=local

    no caso ali em cima, tem o cn=Users, porque Users no AD não é uma OU é um Container.


    abs


    Filipssss - Qualquer criança brinca, qualquer criança se diverte!
    sexta-feira, 16 de julho de 2010 21:50
    Moderador