LDAP is one of the core protocols for developing internet applications. The protocol was designed to access and maintain directory services over the internet.

Join IT Pulse

Receive the latest news of the IT world once per week.

O LDAP ou Lightweight Directory Access Protocol é um dos protocolos mais antigos e populares usados para recuperar informações de serviços de diretório, autenticar usuários e criar aplicativos que não se comparam em termos de segurança ou velocidade. É um dos protocolos para gerenciar ativos e dados em uma rede e fornece acesso seguro a eles. 

Então, o que é LDAP? Como ele funciona? Quais são algumas das práticas recomendadas ao usar o protocolo LDAP? Vamos dar uma olhada. 

O que é o protocolo LDAP?

O LDAP é um dos principais protocolos para o desenvolvimento de aplicativos da Internet. O protocolo foi projetado para acessar e manter serviços de diretório pela Internet. 

O DLAP é uma alternativa ao protocolo de acesso a diretórios (DAP) criado por volta de 1993. O DAP era comumente usado para acessar os serviços de diretório X.500 usando a pilha OSI, mas descobriu-se que isso exigia muita rede e hardware. O protocolo LDAP foi desenvolvido para ser uma versão leve que exigia menos largura de banda de rede e utilizava a pilha TCP/IP.

Existem três versões do protocolo LDAP. A versão mais recente é o LDAP V3, que adiciona autenticação mais forte e segurança de dados ao integrar a camada de autenticação e segurança simples. O LDAPv3 também adicionou extensibilidade ao protocolo. 

A maioria dos serviços de diretório de fornecedores oferece suporte ao LDAP, que atua apenas como a linguagem com a qual os usuários podem acessar informações do diretório. 

O protocolo não sincroniza entre o usuário (cliente) e os usuários do servidor. O protocoloLDAP não especifica quando ou em que ordem o servidor retorna as respostas às consultas. E o cliente não precisa esperar por uma resposta antes de enviar outra pergunta. 

Quais são os diferentes tipos de dados que podem ser acessados usando o LDAP?

Um servidor de diretório LDAP segue uma configuração de árvore. Cada entrada pode ter vários atributos, cada um com sua identificação de objeto. 

Os dados armazenados podem ser:

  • Descritivos (com vários pontos de dados como: nome, data, local, etc., para definir um ativo).
  • Estático (não há muita mudança nesses dados, apenas pequenas mudanças de vez em quando. Também podem ser dados comerciais valiosos que podem ser acessados e alterados com frequência). 

O esquema de diretório define esses conteúdos, o que explica como armazenar todos os dados e as regras que regem como eles são armazenados. Ele define regras relacionadas a atributos e identificadores de objetos e compara com diferentes valores de recursos para tipos de atributos específicos. 

Elementos armazenados no diretório de dados

O primeiro elemento é a entrada, que pode ser o nome do usuário, um recurso e um bloco no banco de dados. Você pode imaginar isso como os nomes em sua agenda de endereços; cada termo e seu número de telefone, número da casa, ID de e-mail etc. Cada entrada se refere ao seu identificador exclusivo chamado Distinguished Name ou DN, que identifica a posição da entrada na árvore.

O próximo elemento é o atributo. Os atributos são anexados às entradas, e cada uma pode ter mais de um atributo. Há diferentes tipos de atributos, conforme definido no esquema, e todos esses tipos de atributos têm um identificador de objeto.

O próximo elemento é a classe de objeto. A classe de objeto é uma coleção de atributos e indica o tipo de objeto. Por exemplo, você pode definir uma classe de objeto para pessoas, que pode ter atributos como idade, sexo, ID de e-mail etc., ou pode especificar uma para impressoras, que pode ter atributos como data de compra, nome do fabricante etc. Cada entrada tem uma classe de objeto.

Como funciona o processo LDAP?

O processo é relativamente simples; o cliente se conecta ao servidor por meio de TCP e porta UDP 389 ou à porta636 para LDAP sobre SSL/TLC. O cliente envia uma consulta ao servidor, e o servidor envia uma resposta de volta. Uma vez concluída, a conexão termina.

Antes que o cliente possa executar operações no servidor, ele deve se autenticar. No método mais direto, é realizada uma operação BIND, em que o cliente envia seu nome de usuário e senha para o servidor, e o servidor os verifica. Mas com a v3, você pode optar por uma implementação que use a autenticação SASL. 

O protocolo LDAP envia todas as comunicações entre o cliente, o servidor e terceiros em texto simples.

Existem muitas operações que os clientes podem executar usando o LDAP. Descrevemos algumas delas abaixo. 

Operações LDAP 

  • Add: A operação adiciona um novo registro ao banco de dados do diretório. O servidor não permite entradas duplicadas. Em vez disso, envia uma notificação "name already exists" se você tentar adicionar um novo item com um nome já existente no diretório. 

  • Ligação: Como discutido acima, a operação BIND autentica um cliente com o servidor LDAP. 

  • Delete: A solicitação de exclusão exclui uma entrada. Mas, na maioria dos casos, essa operação exclui apenas as entradas sem nenhum subordinado. 

  • Pesquisa e comparação: A operação faz o que o nome sugere. Você pode definir vários parâmetros para essa operação, como onde pesquisar e outros filtros.

  • Modificar: A operação de modificação altera as entradas existentes. Além dessas, algumas funções estendidas não faziam parte da especificação original. 

  • StartTLS: Com essa ferramenta, iniciamos a segurança TLS na conexão para a segurança dos dados. 

  • Abandon: Usado para abandonar uma solicitação específica enviada ao servidor.

  • Unbind: Unbind não está relacionado às operações BIND: ele fecha a conexão. Ele permite que o servidor saiba que o cliente não está mais interessado e que ele pode realocar seus recursos em outro lugar.

Qual é a diferença entre o Active Directory e o LDAP?

O Active Directory é um serviço de diretório da Microsoft para redes de domínio do Windows. Ele armazena informações sobre vários dispositivos e outros ativos na Web, e os administradores o utilizam para gerenciar as permissões e o acesso aos ativos da rede. O Active Directory armazena informações como objetos e seus atributos.

O Active Directory usa o LDAP como um dos protocolos e outros protocolos como DNS e Kerberos. O Kerberos ajuda na autenticação e o LDAP recupera informações. O serviço de diretório usa o DNS para localizar os controladores de domínio do Active Directory (os servidores que executam o serviço de domínio do Active Directory).

O DLAP não se limita apenas ao active directory. Podemos usá-lo com qualquer outro serviço de diretório de diferentes fornecedores que o suportem. 

Melhores práticas para usar o protocolo LDAP

O protocolo LDAP envia toda a comunicação entre o cliente, o servidor e terceiros em texto simples. Qualquer pessoa pode acessar todas essas informações. A criptografia com TLS no LDAP não será suficiente. Portanto, é essencial ativar a criptografia com TLS no LDAP, pois o SSL não será suficiente. A melhor solução é configurar os servidores LDAP para que eles não aceitem operações antes de StartTLS. 

Também é vital higienizar as entradas do usuário ou as consultas LDAP antes de passá-las para o servidor. Os ataques de injeção de LDAP são uma vulnerabilidade conhecida, e os invasores podem ser capazes de ignorar a autenticação, acessar informações confidenciais e até mesmo modificá-las.

Também é importante seguir outros princípios de segurança, como nunca reutilizar identificadores, usar um gerenciador de senhas, fazer hashing das senhas e nunca armazená-las em texto simples. 

Glossário de termos usados com o protocolo LDAP

Aqui estão alguns dos outros termos usados em associação com o protocolo. 

  • DIT: Uma estrutura hierárquica para representar entradas usando seu nome distinto. 

  • Alias: Uma entrada na DIT que se refere a outra entrada. 

  • Dereferenciamento: Seguir um alias para encontrar a entrada. 

  • Agente de servidor de diretório: É um aplicativo que usa LDAP para acessar dados de diretório por um cliente. 

  • RDN: RDN ou Relative Distinguished Name refere-se a qualquer nome de atributo e par de valores. Um DN geralmente é composto de um ou mais RDNs. 

  • SASL: SASL ou Simple Authentication Security Layer integra outros mecanismos de autenticação, como o Kerberos, que não estão diretamente incorporados ao protocolo.

Perguntas frequentes

Quando você pode usar o LDAP?

O LDAP é normalmente usado para recuperar informações de serviços de diretório e autenticar usuários antes de permitir que eles acessem as informações armazenadas. Ele é útil em situações em que você deseja fazer pesquisas de alta velocidade em grandes bancos de dados que contêm pequenas partes de dados. O protocolo é otimizado para ser bom na leitura de dados em troca de velocidades de gravação, portanto, se você atualiza os dados com frequência, o LDAP pode não ser a melhor opção.

Qual é a diferença entre LDAP e SSO?

O LDAP é um protocolo que armazena e recupera dados rapidamente. Os dados são armazenados como entradas, atributos e valores de atributos. O protocolo gerencia o acesso aos ativos de rede. 

SSO ou logon único é qualquer sistema que permite que os usuários acessem vários sistemas com uma única autenticação. 

OLDAP ajuda com o logon único, mas essa não é sua única finalidade. 

Qual é a diferença entre LDAP e Kerberos?

O LDAP armazena e localiza informações sobre vários objetos, como pessoas ou ativos de rede. Ele gerencia o acesso a diferentes ativos em uma rede.

Kerberos é um protocolo para autenticar clientes e servidores usando uma chave criptográfica secreta. O Kerberos é frequentemente usado como um método de autenticação em vez da autenticação LDAP ao usar o protocolo LDAP.

Avalie o InvGate como sua solução ITSM e ITAM

Teste gratuito de 30 dias - Não é necessário cartão de crédito

Preços claros

Sem surpresas nem taxas ocultas: somente preços claros que atendam às suas necessidades.

Ver Preços

Migração fácil

Nossa equipe garante que sua transição para a InvGate seja rápida, tranquila e sem complicações.

Ver Customer Experience