O que é o LDAP?
O LDAP (Lightweight Directory Access Protocol) é um subconjunto do X.500 DAP que não possui a sobrecarga (overhead) da pilha de protocolos OSI.
Atualmente ele se encontra na versão 3 e está basicamente documentado na RFC(Request For Comments) 2251.
A grande vantagem desta nova versão do protocolo é a capacidade de criptografia de autenticação o que nas versões anteriores não existiam (versão 1 e 2).
Uma funcionalidade a mais que e implementada pelo openldap e a capacidade de criptografar a conexão inteira utilizando tls. A implementação do tls no slapd utiliza o software openssl.
O que posso fazer com LDAP?
Através do protocolo LDAP pode-se integrar todas as soluções da sua empresa em uma única base de dados de autenticação e procura de dados (exemplo: senhas, e-mail, foto, hierarquia da empresa).
Todos os serviços encontrados em uma empresa, por exemplo, autenticação de e-mail, ftp, estação de trabalho, softwares legados, banco de dados, poderão estar centralizadas em um único banco. Mas em um diretório encontram-se mais funcionalidades.
Os dados dos funcionários (nome, endereço, cargo, foto, e-mail, chaves criptográficas, dados gerais) poderão ser encontrados fazendo apenas uma busca no banco.
O que é Diretório?
Um "Diretório" é uma coleção hierárquica de objetos e atributos de objetos assim como subdiretórios de sistema de arquivos e arquivos contidos nestes subdiretórios.
Um diretório não é como uma base de dados em SQL, por exemplo. Em um Diretório, os Objetos podem ter atributos variados e também pode variar os números dos mesmos atributos, diferente da estrutura de tabelas de bases de dados SQL.
Servidores de Diretório são tipicamente otimizados para grande velocidade nas buscas e alterações.
Visão geral da base de dados?
Uma aplicação de serviço de diretório contém um banco de dados por trás do software. Neste banco de dados encontram-se todos os objetos e atributos criados na sua instalação e no decorrer da administração. Naturalmente não há a necessidade de existir um banco de dados complexo (ex: relacional) para gerenciar esta base de dados.
Uma base de dados LDAP é extremamente eficiente em operações de searchs e não tão eficiente em operações de escrita como um banco de dados relacional.
Isto se deve ao fato de que um serviço de diretório ser voltado basicamente para operações de autenticação e busca ou filtro por atributos específicos nos objetos.
Por exemplo: Uma empresa grande tem muitas autenticações, searchs e não tem muitas escritas (criação de usuários, objetos diversos).
Esta característica deixa o serviço de diretório extremamente veloz em operações de busca, o que leva a possibilidade de ter milhares de usuários fazendo binds e searchs sem ter queda de performance.
Um diretório consiste de entradas contendo informações descritivas armazenadas em seus atributos. Por exemplo, um diretório pode conter entradas descrevendo pessoas ou recursos de redes. Ele pode ser usado em uma larga faixa de aplicações. Algumas aplicações são as seguintes:
- Como um diretório da instituição para ser usado pelos sistemas de recursos humanos (RH);
- Para prover identificação única, considerando que prover uma senha única é uma grande meta de muitos administradores de sistemas;
- Como diretórios PKI, tornando possível que diretórios de diferentes organizações troquem informações referentes a chaves públicas.
dn: cn=information, ou=intranet, o=teste.br
cn: general objectclass: top
objectclass: groupofuniquenames
ou: intranet
uniquemember: cn=ssi, ou=intranet, o=teste.br
uniquemember: cn=webmaintainance, ou=intranet, o=teste.br
uniquemember: cn=design, ou=intranet, o=rnp.Br
uniquemember: cn=information_coordinator, ou=intranet, o=teste.br
O Porque usar um Serviço de Diretório?
Diretórios oferecem muitas vantagens sobre tradicional sistema de autenticação, como:
- Autoridade administrativa é segmentada: É possível fazer a divisão de funções onde cada usuário será responsável por algum tipo de tarefa, tendo direitos para fazer somente estas funções. Por exemplo, administrador encarregado de gerenciar uma partição do diretório, outro administrador responsável por fazer backup do diretório tendo direitos só de leitura e não de escrita.
- Aumento de disponibilidade com Replicação: Com a replicação temos a possibilidade de redundância de serviços, de forma que quando parar o servidor principal teremos um servidor slave com a cópia do diretório.
Vantagens do LDAP v.3 sobre o LDAP v.2
- Possui maior definição de Schemas (classes de objetos e atributos) do que sua versão anterior.
- Definição de referencias superiores e subordinadas.
- Utiliza-se de um mecanismo de criptografia(SSL/TLS), ao qual possibilita o trafego de todos dados criptografados, aumentando assim a segurança.
- Outra diferença é que pode-se renomear os objetos que já tiverem sido criados, caso seja necessário.