Considerações prévias

O objetivo deste handbook não é o de apresentar todas as implementações do LDAP que se encontram no mercado, mas sim desenvolver um guia que contenha os procedimentos e detalhes relacionados com a autenticação em ambientes heterogêneos com Linux e Windows.

O enfoque que daremos aqui é para o OpenLDAP e o Active Directory, da Microsoft. As razões pelas quais o OpenLDAP foi escolhido para este estudo são, entre outras, as seguintes:
  • O OpenLDAP é um software de código aberto, sendo o mesmo disponível na Internet para quem quiser utilizá-lo;
  • O OpenLDAP 2 implementa fielmente a especificação do LDAP v3;
  • Está disponível para múltiplas plataformas.

O projeto OpenLDAP não é composto somente de um servidor LDAP, mas também das ferramentas necessárias para administrar e usar este servidor. Dentre essas ferramentas estão clientes de linha de comando para realizar buscas, bibliotecas para diversas linguagens para que seja possível implementar outras ferramentas e servidores compatíveis com o padrão LDAP.

Inicialmente, o enfoque será dado para as ferramentas principais, como o servidor slapd e para as ferramentas de linha de comando encarregadas por interagir com o servidor descrito.

Ainda que os pré-requisitos possam variar nas diferentes versões, há uma série deles que são comuns para todas as versões, que são os seguintes:
  • O sistema deve ter suporte à POSIX threads, sendo este próprio do sistema ou através de alguma biblioteca externa;
  • O suporte a SSL (Secure Sockets Layer) não é imprescindível, porém, é recomendável que a comunicação entre um servidor LDAP e as ferramentas de consulta seja criptografada com SSL/TLS. Isto se dá pois muitos dos diretórios LDAP, atualmente, são utilizados como diretórios de usuários para realizar autenticações de algum tipo, sendo de grande risco permitir que dados de usuários e senhas trafeguem em texto puro pela rede. Quando a comunicação ocorre dentro de um mesmo sistema, a segurança desta comunicação não é tão crítica, mas limita consideravelmente a mobilidade e a portabilidade do software. Se as ferramentas ou o servidor simplesmente serão instalados, basta que o sistema tenha os binários das bibliotecas. Porém, se houver a compilação do software, como vai ser neste caso, é necessário ter as bibliotecas de desenvolvimento do código-fonte do SSL;
  • O suporte a SASL (Simple Authentication and Security Layer) na verdade não é necessário para o uso de qualquer das ferramentas ou mesmo do servidor. Porém, se desejarmos que o software cumpra corretamente a especificação formal, é necessário ter as bibliotecas instaladas. Se compilarmos o software sem tê-las instaladas no sistema, encontraremos uma mensagem de que a compilação segue adiante, mas sem suporte SASL e, portanto, sem o servidor ou as ferramentas totalmente compatíveis;
  • No capítulo de introdução foi mencionado que o formato em que a informação do diretório é armazenada não é regido pela especificação LDAP. Isto é possível porque a implementação do protocolo permite utilizar o LDAP como meio para outras consultas (como era feito antigamente com o X.500) ou implementar a base de dados desejada. A base de dados que já vem implementada com o OpenLDAP é a BDB (Berkeley Database). Evidentemente, é necessário ter as bibliotecas de bdb para o uso do servidor LDAP. Caso se quisesse compilar apenas as ferramentas de consulta, por outro lado, não seriam necessárias estas bibliotecas, uma vez que a base de dados é independente do servidor LDAP. De qualquer forma isto é transparente ao cliente que faz suas consultas através do LDAP sem acessar diretamente a base de dados. Para compilar o servidor slapd, porém, são necessárias as bibliotecas de desenvolvimento libdb.

Voltar para o índice | Próximo capítulo

Last edited Sep 12, 2007 at 6:21 PM by joicekafer, version 13

Comments

No comments yet.