Manual de Usuário do LDAP

Introdução

LDAP (Lightweight Directory Access Protocol) é um protocolo padrão utilizado para acessar e gerenciar informações armazenadas em serviços de diretório, como o Active Directory da Microsoft, o OpenLDAP dentre outros. Ele é frequentemente usado para centralizar informações de usuários, grupos e recursos em uma rede, como em sistemas de autenticação, diretórios de contatos e sistemas de gerenciamento de acesso.

Este manual cobre o uso do LDAP com a ferramenta Apache Directory Studio.

Iniciando o uso

Criando uma conexão

Pelo menu File -> New será aberto o Wizard, escolher LDAP Browser -> LDAP Connection. Ou, na janela de conexões, com o botão direito escolher New Connection.

Preencher somente o Nome da conexão (Connection name) e o Hostname (ou IP) e avançar para a próxima tela.

Preencher o campo Bind DN or User e Bind password conforme informado pela equipe que criou o LDAP. Após configurado é possível clicar em Check Authentication para confirmar o acesso e login no LDAP.

Conectando pela aba de Connections

Verifique qual servidor da lista deseja conectar, dê um duplo clique no servidor escolhido ou selecione-o e clique no ícone de conexão (destacado em vermelho na imagem abaixo).

Se a conexão for bem sucedida, o ícone do servidor mudará para amarelo:

Estrutura do LDAP

Árvore de diretórios

A árvore utilizada baseia-se essencialmente em Groups e Users, podendo adicionalmente contar com Policies para políticas de senha.

Siglas

Sigla
Significado

dc

Componentes do domínio (Domain Component)

ou

Unidade organizacional à qual o usuário pertence (Organizational Unit)

cn

Nome comum (Common Name)

sn

Nome da pessoa (Surname)

uid

ID de usuário (User ID)

mail

e-mail (Email Address)

Árvore Users

Nesta árvore são criados os usuários e definidas suas senhas, pode ser estruturada em subníveis para facilitar a organização dos usuários mediante conceito de agrupamento por localidade, departamento, etc.

Árvore Groups

Nesta árvore são definidos grupos que representarão permissões / roles de acesso às ferramentas, mediante adição do usuário ao grupo de acesso desejado.

Exemplo de grupos:

  • etr_view - Usuários adicionados a este grupo terão acesso às permissões definidas no grupo, que representam opções de acesso ao ETR como visualizador.

  • bcc_verify - Usuários adicionados a este grupo poderão logar no BCC e realizar pesquisas de verificação (pesquisas 1:1).

Cadastro de usuário

Na criação de usuário, preencher os seguintes atributos:

cn - usado como o nome do login do usuário; sn - usado para registar o nome completo do usuário; uid - reservado para uso futuro, devendo ser preenchido com o mesmo texto que o cn; password - preenchido com a senha deste usuário; mail - usado para registar o e-mail do usuário.

Para cadastrar um usuário, clique com botão direito em cima de ou=User e escolha New -> New Entry:

Será aberta a tela de criação de usuário. Caso existam ou intermediárias, altere o caminho no diretório de criação. Caso contrário, se nenhuma alteração for realizada, o usuário será criado na raiz do diretório Users.

Na tela seguinte, remova organizationalUnit:

Adicione inetOrgPerson e o aplicativo automaticamente trará as classes de dependência organizationalPerson, person e top:

Avance para próxima tela para escolher o cn. Preencha com o cn de login desejado:

Nesta nova tela é exibido um sumário do que será feito e pode-se alterar o sn. Preencha, se possível, com o nome completo do usuário.

Em seguida, clique com o botão direito do mouse em New Attribute:

Escolha UID e preencha com o valor do UID.

O valor do UID deve vir do administrador de usuários do sistema.

Em seguida, o atributo userPassword:

Ao encerrar, será aberta a tela para definir a senha. Escolha CRYPT-SHA-512 e preencha com a senha desejada:

Finalmente, exclua o objectClass organizationalPerson (structural) clicando com o botão direito e escolhendo Delete Value:

Adição de grupo a um usuário

Em Users, abra o cadastro de um usuário e copie o DN do usuário mostrado no cabeçalho da tela:

DN é a sigla para Distinguished Name, que é o Nome Distinto do objeto no LDAP. É a maneira de identificar um objeto de forma única no diretório. Ele fornece o caminho para a entrada específica dentro da hierarquia do diretório LDAP, que é organizada em uma estrutura de árvore. Um DN é composto por uma sequência de nomes distintos relativos (RDNs) conectados por vírgulas. Cada RDN é um componente do DN que representa um valor de atributo específico.

Por exemplo:

  • cn=leandro.pinheiro: Nome Comum (cn) da entrada. Geralmente é utilizado para nomes de pessoas ou objetos.

  • ou=Users: Unidade Organizacional (ou) onde a entrada está localizada.

  • dc=oldap: Componente de Domínio (dc). Pode representar um subdomínio ou uma parte específica do domínio dentro da estrutura LDAP.

  • dc=igp: Outro Componente de Domínio (dc). Representa outra parte do domínio, possivelmente indicando um departamento ou subdivisão dentro da organização.

  • dc=griaule: Componente de Domínio (dc) de nível mais alto. Representa o domínio principal da organização.

Portanto, o DN cn=leandro.pinheiro,ou=Users,dc=oldap,dc=igp,dc=griaule identifica um usuário específico chamado leandro.pinheiro dentro da unidade organizacional Users, que faz parte do subdomínio oldap, do domínio igp, dentro do domínio principal griaule. Este DN fornece um caminho claro e exclusivo para localizar esta entrada específica no diretório LDAP da organização.

Em seguida, abra o raiz de Groups e escolha o grupo desejado. Clique com o botão direito no grupo e em New Attribute. Em Attribute Type, escolha member. Clique em Finish.

Na tela DN Editor, cole o DN completo do usuário (copiado no primeiro passo). Clique em OK:

Adição rápida de grupo a um usuário

Quando o grupo já possui usuários / membros, a adição de um novo usuário ao grupo é mais ágil: basta clicar com o botão direito no componente member e escolher New Value. A tela DN Editor abrirá. Então, como mostrado na seção anterior, cole o DN completo do usuário e clique em OK.

Exclusão do usuário de um grupo

Abra o grupo em que o usuário está:

Clique com o botão direito no member do usuário que se deseja remover do grupo e clique em Delete Value:

Confirme clicando em OK:

Criação de grupo

Para criar um novo grupo, clique com botão direito em cima de ou=Groups e escolha New -> New Entry.

Será aberta a tela de criação, semelhante à criação de usuários. Escolha a opção organizationalUnit.

Escolha ou e preencha um nome, no exemplo abaixo foi escolhido LDAP. Finalize a criação do grupo clicando em Finish.

Para localizar os grupos de um usuário, acesse o buscador do LDAP e selecione a opção cn ou member.

Selecionando member, será necessário pesquisar utilizando o DN completo do usuário.

Na parte superior direita, verifique se o seguinte ícone está selecionado:

Se não estiver, selecione-o. Isso permitirá fazer uma busca por toda árvore do groups (opções search one level only ou search whole subtree).

Verifique a resposta no Quick Search:

Lista de grupos do usuário na descrição do usuário

Outra forma de verificar os grupos que o usuário pertence é através do Fetch.

Para isso, clique com o botão direito do mouse no nome do usuário e escolha Fetch -> Fetch Operacional Attributes:

Também é possível inserir o Fetch Operacional Attributes clicando com o botão direito do mouse e escolhendo Properties. Em seguida, clique em Connection e abra a aba Browser Options. Então, na seção Features, marque a opção Fetch operational attributes while browsing:

Assim, os grupos que o usuário pertence serão exibidos durante a navegação:

Troca de senha

Localize o usuário pelo Quick Search, como mostrado neste passo a passo.

Após localizar o usuário, clique duas vezes em userPassword e abra a aba New Password.

Insira a nova senha e confirme.

Após aplicar a nova senha, aparecerá a tela do Modification Logs confirmando sua alteração.

Verificação de senha

Para verificação de senha, primeiro localize o usuário pelo Quick Search, como mostrado neste passo a passo.

Após localizar o usuário, clique duas vezes em userPassword e abra a aba Current Password.

No campo, Verify Password, insira a senha atual do usuário e clique em Verify.

Se a senha estiver correta, a mensagem "Password verified successfully" será exibida.

Organização de usuários

Usuários por subgrupos

A organização eficiente dos usuários em um diretório LDAP pode ser realizada por meio das subárvores. Essa estrutura facilita a administração do diretório, permitindo uma segmentação clara dos usuários com base em critérios específicos como empresa, departamento ou contratos.

Conceito de Subárvore de Usuários

Para otimizar a gestão de usuários, é recomendado a implementação de uma subárvore hierárquica com um ou dois níveis no máximo de profundidade. Essa prática garante uma separação lógica dos usuários, trazendo clareza e eficiência na administração do diretório.

Vantagens da Subárvore de Usuários

  1. Simplificação da Administração: Reduz a complexidade da administração do LDAP.

  2. Organização Estruturada: Facilita a localização e o gerenciamento de objetos LDAP.

  3. Melhoria de Performance: Minimiza o tempo de resposta em consultas e operações no LDAP.

Esta estrutura exemplifica:

  • ROOT: Nível raiz do diretório LDAP.

  • Organização: Unidade organizacional principal.

  • UF: Unidade Federativa, exemplificando com SP (São Paulo).

  • CONTRATO: Subdivisão de contratos, como Polícia Científica.

  • USER: Usuários dentro do contrato específico.

  • Permissão: Permissões associadas aos usuários.

Outro exemplo, esse diretamente no LDAP, consiste em uma árvore de subgrupos. Onde tem-se um grupo policiaCivil e dentro dele um subgrupo SC.

Atualizado