Linux slogan
Visite também: Segurança Linux · BR-Linux.org · Dicas-L · Doode · NoticiasLinux · SoftwareLivre.org · UnderLinux



» Screenshot
» Login
Login:
Senha:

Se você ainda não possui uma conta, clique aqui.

Esqueci minha senha



Artigo

Implementação LDAP e Java
Linux user
jlucasps
23/11/2009
O LDAP é um serviço de diretórios no qual os diretórios são disponibilizados no servidor em uma estrutura hierárquica e podem ser acessados remotamente pelos clientes. Neste tutorial será utilizada a implementação open source OpenLDAP do servidor LDAP para disponibilizar consultas a entidades de uma instituição fictícia utilizando a linguagem Java.
Por: João Lucas Pereira de Santana
[ Hits: 18703 ]
Conceito: 10.0   1 voto(s)1 voto(s)1 voto(s)1 voto(s)1 voto(s) + quero dar nota ao artigo

Introdução

O LDAP é um serviço de diretórios baseado no modelo cliente-servidor no qual os diretórios são disponibilizados no servidor em uma estrutura hierárquica e podem ser acessados remotamente pelos clientes.

O LDAP (Lightweight Directory Access Protocol) surgiu como uma alternativa ao protocolo DAP (Directory Access Protocol) para ser implantado numa arquitetura de rede que implementa a pilha de protocolos do TCP/IP visando, principalmente, economia de recursos computacionais.

O slapd, servidor do LDAP, pode fornecer seu próprio serviço de diretórios ou conectar-se a um serviço global para responder às requisições dos clientes. Neste tutorial será utilizada a implementação open source OpenLDAP do servidor de diretórios LDAP para disponibilizar consultas a alunos de uma universidade fictícia (a Universidade Federarrr Rurarrr dos Agrônom - UFRA) utilizando a linguagem Java.

Criando uma estrutura de diretórios.

A estrutura de uma base LDAP pode ser vista na Figura 1.
Linux: Implementação LDAP e Java
O arquivo de configuração base.ldif da estrutura anterior é mostrado abaixo:

dn: dc=ufra,dc=br
dc: ufra
objectClass: top
objectClass: domain

dn: dc=professor,dc=ufra,dc=br
dc: professor
objectClass: domain

dn: dc=aluno,dc=ufra,dc=br
dc: aluno
objectClass: domain

dn: dc=tecnico,dc=ufra,dc=br
dc: tecnico
objectClass: domain

dn: ou=agroboy,dc=aluno,dc=ufra,dc=br
ou: agroboy
objectClass: organizationalUnit

dn: ou=bichogrilo,dc=aluno,dc=ufra,dc=br
ou: bichogrilo
objectClass: organizationalUnit

dn: ou=computeiro,dc=aluno,dc=ufra,dc=br
ou: computeiro
objectClass: organizationalUnit

dn: uid=rudini,ou=computeiro,dc=aluno,dc=ufra,dc=br
objectClass: posixAccount
objectClass: shadowAccount
objectClass: inetOrgPerson
cn: Rudini
sn: PitBull
uid: rudini
uidNumber: 1010
gidNumber: 100
homeDirectory: /home/rudini
loginShell: /bin/bash
gecos: Rudini AuAu PitBull
userPassword: {SSHA}dyaOuUNnVQ04uRwq5k55KcwGgumOEZhp

O arquivo LDIF (LDAP Data Interchange Format) anterior é do tipo texto e contém dados no formato LDAP para serem inseridos no banco de dados. É comum usar este arquivo como cópia de segurança dos dados.

O atributo dn significa Distinguished Name e seu conteúdo deve ser único em todo o banco de dados. Um dn identifica um, e somente um, objeto em toda a árvore de dados e é composto pelo atributo mais o caminho para ser chegar até a raiz da árvore.

O atributo dc significa Domain Component e é utilizado para determinar o caminho até a raiz da árvore:

dn: ou=computeiro,dc=aluno,dc=ufra,dc=br

Os atributos objectClass são classes de objetos e atributos para representar um usuário do sistema Linux. Estas classes estão definidas nos schemas que posteriormente serão inseridos nos arquivos de configuração do servidor.

objectClass: organizationalUnit

Uid é o nome de login do usuário, cn significa Common Name ou Nome Comum e representa o primeiro nome do usuário, sn (Surname) é o sobrenome do usuário. UidNumber é o número de identificação do usuário, gidNumber é o número de identificação do grupo primário do usuário, homeDirectory é a localização do diretório home do usuário, loginShell será o shell utilizado pelo usuário, gecos normalmente é o nome completo do usuário e userPassword é o hash da senha do usuário.

Para gerar um hash basta usar o comando slappasswd. Neste exemplo a senha usada foi a palavra "auau".

# slappasswd
New password:
Re-enter new password:
{SSHA}Zaoa6XdxaiC8r5s+LLiLxkdUHxyZxpkq

Próxima página >>




Páginas do artigo

Outros artigos deste autor

Leitura recomendada

Comentários
Nenhum comentário foi encontrado.

Contribuir com comentário


  
Para executar esta ação você precisa estar logado no site, caso contrário, tudo o que for digitado será perdido.
Responsável pelo site: Fábio Berbert de Paula - Conteúdo distribuído sob licença GNU FDL
Site hospedado por:

Viva o Linux

A maior comunidade Linux da América Latina! Artigos, dicas, tutoriais, fórum, scripts e muito mais. Ideal para quem busca auto-ajuda em Linux.