Arquivo

Posts Tagged ‘LDAP’

Exportando as informações do Active Directory com o CSVDE

14 de fevereiro de 2012 10 comentários

Dependendo do quanto você utiliza o Active Directory ele pode conter algumas informações muito valiosas sobre sua empresa e seus funcionários. Não só o diretório e as credenciais básicas de cada um de seus usuários, mas se totalmente preenchida, ele irá armazenar informações dos usuários de contato, incluindo endereços de email e números de telefone, o seu departamento e até mesmo o local do escritório. Esta informação pode ser muito útil a partir de um ponto de vista administrativo. Muitas vezes, os projetos irão precisar de uma lista de todos os usuários dentro de um grupo ou departamento específico, compilar essas informações manualmente pode ser um processo demorado, e que pode rapidamente se tornar obsoleto. Não seria ótimo se pudéssemos extrair as informações armazenadas no Active Directory para uso em planilhas e listas de verificação? Na verdade podemos e não é complicado.

CSVDE, o que é?

CSVDE significa Comma Separated Value Data Exchange. CSVDE é uma ferramenta de linha de comando pequena que está inclusa no Windows 2003 e superiores, geralmente encontrado no diretório %windir%/system32. O aplicativo também pode ser instalado em um estações de trabalho do Windows XP como parte do Active Directory Application Mode (ADAM).

O valor separado por vírgula formato de arquivo (CSV) é relativamente simples. Normalmente apresentados em formato de texto simples, o arquivo CSV contém dados que foram separados em colunas com uma vírgula padrão “,” separando cada um. Cada linha de dados é apresentado em uma nova linha. O CSV é um formato muitas vezes utilizado para extrair dados brutos como a maioria dos aplicativos desenvolvidos para importar e manipular dados (como Microsoft Excel ou OpenOffice Calc) irá aceitá-lo sem modificação e ordenadamente organizar em linhas e colunas.

O CSVDE tem duas funções principais: importação de dados de um arquivo CSV formatado para o Active Directory e exportar dados do Active Directory em um arquivo CSV formatado. Embora eu tenha visto muitas pessoas discutindo funções CSVDE de importação, eu não aconselho isto a menos que você seja 100% familiarizado.

Exportando dados do diretório

Como estamos utilizando apenas as funções CSVDE de exportação, não há nenhuma chance de danificar o diretório ou acidentalmente corromper seus dados.

Exportação básico

A exportação de base vai exportar todos os registros do Active Directory em um arquivo CSV, sem qualquer filtragem de resultados. Por padrão o CSVDE irá se conectar ao AD usando as credenciais do usuário conectado no momento, para especificar credenciais diferentes utilize a opção -a (-a UserDN [senha | *]).

Para exportar todos os dados do Active Directory em um arquivo chamado AD.csv:

csvde -f AD.csv

Após a exportação concluída uma mensagem irá lhe informar quantas entradas foram exportadas. Essas ‘entradas’ traduzem-se em linhas de dados, e provavelmente você vai notar que há mais entradas do que usuários. Isto porque, sem qualquer filtragem o CSVDE simplesmente exporta todo o conteúdo de seu AD em um arquivo CSV, que inclui grupos, contas do sistema, e outros valores ocultos que podem ou não ser úteis para você. Se você abrir o arquivo AD.csv com o notepad, você será capaz de dar uma rápida olhada nos dados e tudo ficará claro.

Filtrando resultados

Há três formas de filtrar as informações do CSVDE. A primeira maneira de excluir resultados indesejáveis é filtrar para baixo a uma parte específica do diretório usando a opção -d. Usando isso, podemos concentrar a exportação de uma UO específica dentro da estrutura de diretórios:

csvde -d “OU=Usuários,DC=contoso,dc=local” -f AD.csv

Se você organizar seus usuários em uma OU específica, então isso pode reduzir rapidamente o número de registros indesejados exportados para o arquivo CSV.

Para reduzir ainda mais o número de registros indesejados exportados, podemos usar a opção -r. A opção -r é usada para filtrar linhas de dados com base nas propriedades específicas desse registro. Neste exemplo eu quero encontrar usuários e computadores apenas:

csvde -f AD.scv -r objectClass=user

Ou para usar vários filtros:

csvde-f AD.csv -r “(&(objectClass=user)(objectCategory=person)”

Isso irá retornar os usuários sem computadores.

Se você não tem certeza sobre os nomes e / ou valores de campos de propriedades específicas, eu recomendo usar adsiedit.msc para procurar o diretório.

Como seria de esperar, ambos os filtros podem ser combinados. Vamos dizer que eu quero exportar um as informações de usuários dentro da OU chamada  Diretores:

csvde -d “OU=Diretores,DC=contoso,DC=local” -f AD.csv-r “(&(objectClass=user)(objectCategory=person)”

Agora você já deve ter percebido que, mesmo se você filtrar apenas às linhas de dados que você quer especificamente, nós ainda acabamos com um monte de informações indesejadas. Vamos dar uma olhada em como podemos resolver isso.

Da mesma maneira que a opção -r filtra linhas de informações indesejadas, pode-se utilizar a opção -l para filtrar colunas de dados indesejados. Digamos que eu quero os mesmos resultados retornados como na consulta anterior, mas eu só quero os dados nome, sobrenome e endereço de e-mail padrão do usuário para ser exportado:

csvde -d “OU=Diretores,DC=contoso,dc=local” -f AD.csv-r “(&(objectClass=user)(objectCategory=Person)” -l “givenName, sn, mail”

Se você não tem certeza do nome da propriedade específica da informação desejada, de uma olhada na estrutura de diretório com o adsiedit.msc, e tenha cuidado para não alterar nada acidentalmente.

Conclusão

CSVDE é uma daquelas pequenas aplicações quem vem no windows e que você nem sabe que existe até que você precise usá-la. Uma vez que você se familiarizar com ela, você vai descobrir que é uma maneira muito rápida e fácil de extrair informações sobre usuários específicos ou grupos de usuários para serem usados com outros aplicativos ou bancos de dados. Descobri o CSVDE quando precisei criar os mesmos usuários de um Windows SBS em um outro domínio pois não podia integrar o AD devido as restrições do Windows.

Se você tem outro uso para essa ferramenta compartilhe conosco deixando um comentário.

Esse post foi útil? Deixe um comentário.

Anúncios

Como criar usuário via linha de comando

13 de fevereiro de 2012 4 comentários

 

Essa dica é bem interessante quando precisamos criar vários usuário no AD de uma vez ou mesmo para usar como uma rotina pois podemos usar ela como uma bat.

O Comando é basicamente esse:

Dsadd user “CN=Fulano da Silva,OU=Users,OU=Administrativo,DC=Contoso,DC=local” –SamID fulano.silva –UserDN fulano.silva@contoso.local –FN Fulano –MI JS –LN Silva –Display “Fulano da Silva” –pwd 123@mudar –desc Setor Administrativo –email fsilva@contoso.com.br

Essa linha de comando esta com muita informação, você não precisa inserir todos esses dados se não quiser, mas para ter um cadastro do usuário mais completo sugiro usar a linha de comando dessa forma caso contrário você terá que ir pelo AD usuário por usuário para completar as informações.

O que esta em vermelho são as informações que você irá alterar.

Note que depois da vírgula “,” não há espaço.

 

Abra um bloco de notas e escreva a linha de comando acima alterando as informações do seu funcionário e salve como usuarios.bat

“CN=Fulano da Silva,OU=Users,OU=Administrativo,DC=Contoso,DC=local”

Utilize as “aspas” sempre que houver espaços entre os nomes. E quando houver uma OU (Unidade Organizacional) dentro da outra escreva todas da mais baixa para a mais alta, ou seja de dentro para fora.

 

Abaixo segue um descritivo das opções:

-SamID

O Sam ID consiste no nome pré windows 2000, é o nome do perfil que será criar no desktop do usuário;

-UserDN

O User Distinguished Name é usados para dominios baseados em AD;

-FN

First Name, como já informa é o primeiro nome de usuário;

-MI

São as iniciais do nome de usuário;

-LN

Last Name, o último nome do usuário;

-Display

Neste comando é utilizado para o nome que será mostrado no menu iniciar e no email caso tenha o Exchange;

-pdw

O password do usuário;

-Desc

Descritivo referente ao usuário;

-email

O e-mail do usuário.

 

Esse post foi útil? Deixe um comentário.

%d blogueiros gostam disto: