X.500 e LDAP
Liane Tarouco
X.500
• X.500 é um protocolo que especifica um modelo
para a conexão de Serviços de Diretórios locais
a fim de formar um diretório global distribuído
Serviços X.500
• X.500 é especificado como um serviço da
Camada de Aplicação no mundo OSI,
porem o seu projeto não depende
significativamente das outras camadas OSI,
e ele pode ser visto como um projeto de um
Serviço de Diretório de propósito geral.
X.500
• O padrão X.500 define o Diretório como
uma coleção de sistemas abertos que
cooperam para manter uma base de dados
lógica com informações sobre um conjunto
de objetos do mundo real.
• Os usuários do Diretório, incluindo pessoas
e programas, podem ler e modificar as
informações, ou parte dela, se tiverem
permissão para isto
Definições
• Entrada - Uma entrada é o bloco básico de um
banco de dados, ela guarda as informações sobre
o objeto de interesse
• Objetos - Objetos são associados com entidades
do mundo real, sendo identificados pelo seu
nome.
• Classes de Objetos - Uma classe de objetos
identifica objetos que possuem características
similares, definindo as informações de interesse
para estes objetos
Definições
• Atributos - Um atributo é um pedaço de
informação que descreve algum aspecto de
uma entrada
• Nomes - Um nome simplesmente denota
um objeto, descrevendo o objeto, com o
objetivo de tornar mais fácil para as pessoas
lembrarem-se deles
Definições
• Endereço - Um endereço indica a
localização de um objeto dentro do
Diretório
• Rota - Uma rota indica como chegar a um
determinado endereço através da estrutura
do Diretório
Nome distinto
• Cada entrada no Diretório X.500 descreve
um objeto (uma pessoa, uma rede), que tem
um identificador único chamado ND Nome Distinto.
• Uma entrada consiste de uma coleção de
atributos, sendo que, para uma pessoa, estes
atributos podem ser nome, endereço, e-mail,
etc.
Nomes
• Em qualquer discussão sobre nomeação, é
importante distinguir entre três conceitos:
– um nome denota um objeto;
– um endereço indica onde o objeto esta;
– uma rota diz como chegar lá.
Nomes
• A X.500 especifica parcialmente regras para
a estrutura dos nomes e os valores que estes
nomes ou partes deles podem assumir.
Características dos nomes
• Eles têm uma ou mais partes
denominadas atributos
• As partes de um nome têm
um relacionamento
hierárquico.
•A autoridade para atribuir nomes pode ser delegada
em qualquer nível de hierarquia
Características dos nomes
• As regras que governam a definição exata de um
nome (os atributos que são usados e os valores
que os atributos podem assumir) podem variar
em diferentes partes de espaços de nomes.
• Todos os objetos que compartilham o mesmo no
parental têm nomes distintos relativos
diferentes.
• Um nome distinto relativo (NDR) é composto
de um ou mais atributos associados com o arco
do pai para o filho
ADI - Árvore de Informação de
Diretório
As entradas na BID são
organizadas em forma
de árvore e esta
estrutura é denominada
Árvore de Informações
do Diretório (AID).
• Os vértices da árvore representam as entradas. As entradas de
mais alta ordem (próximas da raiz) usualmente representam
objetos tais como países ou organizações enquanto que
entradas de menor ordem representam pessoas ou processos de
aplicação.
{ Country = Brasil,
Organization = Empresa Geral de Acessorios,
{Division = Auditoria,
Estado = RS},
NomePessoal = Francisco Guedes}.
O nome distinto que e um pseudonimo para Francisco é:
{ Country = Brasil,
Estado = SP,
Organization = Empresa Geral de Acessorios
Division = Auditoria,
NomePessoal = Francisco Guedes}.
Recomendações série X.500
• A série de recomendações X.500 define
regras para dar nome a objetos, uma BID Base de Informações de Diretório lógica
para guardar informações sobre estes
objetos e as entidades de protocolo que
cooperam para prover o Serviço de
Diretórios.
Atributos
• A X.520 definiu onze grupos de tipos de atributos:
•
•
•
•
•
Sistema
Rotulação
Geográficos
Organizacionais
Explanatórios
•
•
•
•
•
•
Endereçamento postal
Telecomunicações
Preferência
Aplicação OSI
Relacional
Segurança
Sistema
• Tipos de atributos de sistema denotam a
classe de um objeto, um pseudônimo de um
objeto, se existe, e uma descrição legível
por seres humanos do conhecimento
armazenado por um específico ASD
(conhecimento de como a BID e distribuída
entre os ASDs).
Rotulação
• Tipos de atributo de rotulação são cadeias
de caracteres que as pessoas associam com
os objetos.
• Exemplos disso incluem nomes comum, tais
como "Joao Silva" ou "Modem de Alta
Velocidade" ou números seriais.
Geográfico
• Tipos de atributos geográficos associam
uma regiao ou posição geográfica com um
objeto. Exemplos incluem país, estado e
localidade.
Organizacionais
• Tipos de atributos organizacionais
identificam a organização em que o objeto e
afiliado e o papel do objeto naquela
organização tal como nome da organização
e cargo.
Explanatório
• Tipos de atributos explanatório fornecem
auxílio ao usuário de Diretório.
• Por exemplo eles podem descrever o
objetivo de um objeto, sugerir critério de
pesquisa que pode ser útil numa sub-árvore
ou dar a ocupação de uma pessoa.
Endereçamento postal
• Tipos de atributo de endereçamento postal
especificam a informação requerida para a
entrega física de um objeto tal como um
nome de rua ou uma caixa postal.
Telecomunicações
• Tipos de atributos de telecomunicações
associam um ou mais endereços eletrônicos
com um objeto. Exemplos de tais endereços
incluem números de telefones, números de
telex números de teletex, números de facsimile, endereços X.121, endereços RDSI e
informação de enderecamento usada para
telegramas.
Preferência
• Tipos de atributos de preferência
especificam a ordem prioritária de escolha
do método a ser usado na tentativa de
comunicar-se com o objeto (por exemplo
correio eletrônico, telefone).
Aplicação OSI
• Tipos de atributo de aplicação OSI
armazenam o endereço de apresentação e o
contexto de aplicação de uma entidade
de aplicação OSI.
Relacional
• Tipos de atributo relacional implementam o
conceito de grupos e relacionamentos no
Diretório.
• Exemplos desses atributos incluem
membro, proprietário, papel e "veja outros".
• Note que o Diretório não inclui
mecanismos explícitos para manter a
consistência desta informação.
Segurança
• Tipos de atributo de segurança suportam
mecanismos de autenticação que podem ser
usados pelo Diretório. Exemplos deste
atributo incluem palavra-senha e
certificações.
Protocolos
• Existem dois protocolos usados pelo Diretório.
– O Protocolo de Acesso ao Diretório (PAD) é usado
em interações entre um AUD e um ASD.
– Protocolo do Sistema de Diretórios (PSD) é usado
em interações entre dois ASD
Procedimentos
• O AUD interage com o Diretório
comunicando-se com um ou mais ASDs.
• Um AUD não precisa estar ligado a nenhum
ASD em particular.
• Ele pode interagir diretamente com vários
ASDs para fazer pedidos.
Atendimento AUD
• Se o ASD pode atender o pedido do AUD por
si mesmo, ele toma toda a atitude apropriada
fornecendo ao AUD informação de sua BIDBase de Informações de Diretório.
• Se não tiver a informação solicitada pode
ocorrer uma das seguintes situações:
– Encadear
– Disseminar
– Sugerir
Encadear
• O ASD pode encadear o pedido passando-o para
outro ASD.
• O segundo ASD responderia ao primeiro ASD,
não ao AUD. O encadeamento pode ser efetuado
recursivamente.
Disseminar
• O ASD pode disseminar o pedido a dois ou mais
ASDs para resolução concorrente.
• O primeiro ASD coleta todas as respostas antes de
responder ao AUD.
• A disseminação pode ser considerada como uma
forma de encadeamento. Ela pode ser efetivada
recursivamente.
Sugerir
• O ASD pode retornar ao AUD uma sugestão de
um outro ASD que possa atender o pedido.
• Isto é, o primeiro ASD da o nome do segundo
ASD para o AUD.
• O AUD então
pergunta ao segundo
ASD o que deseja.
Operações do DSP
• Leitura Encadeada - permite o encadeamento de
operações de leitura, comparação e abandono.
• Pesquisa Encadeada - permite o encadeamento
das operações de listagem e pesquisa.
• Modificação Encadeada - permite o
encadeamento das operações de acréscimo,
exclusão e modificação de entradas e
modificação de NDR.
Protocolos X.500
Protocolos X.500
ROSE
Operações remotas
ACSE
Conectar e desconectar
Serviços
• conexão ao diretório
• interrogação do diretório
• modificação do diretório
Limites no uso dos recursos
• Controle são providos em, entre outras
coisas:
–
–
–
–
–
quantidade de tempo
tamanho dos resultados
escopo da pesquisa
modos de interação
prioridade do pedido
• Mecanismos de segurança para proteger as
informações do Diretório.
Filtros
• Pedidos que envolvam informações sobre
ou envolvendo diversa entradas podem
carregar junto um filtro
• Um filtro expressa uma ou mais condições
que uma entrada deve satisfazer para ser
retornada como parte do resultado. Isto
permite reduzir o conjunto de entradas
retornadas para somente aquelas de
interesse relevante.
Conexão e Desconexão (Binding
e Unbinding)
• As operações de conexão e desconexão são
as primeiras e as últimas numa série de
operações que um AUD invoca num ASD.
• Elas governam o relacionamento
operacional entre um AUD e um ASD.
• A ligação prove um meio para um AUD se
identificar a um ASD e vice-versa.
• O desligar e usado por um AUD para
assinalar o fim de uma série de operações.
Operações de Leitura
• Duas operações ler (READ) e comparar
(COMPARE) são usadas para examinar a
informação associada com uma entrada de
objeto particular.
• Ler é usado para extrair informação de uma
particular entrada ou para verificar um
nome único e distinto.
• Comparar e similar a ler exceto que o AUD
fornece informação para o ASD comparar
Operações de Pesquisa
• Duas operações, listar (LIST) e pesquisar
(SEARCH) podem retornar informações sobre
múltiplos objetos.
• Dada uma particular entrada na AID-Árvore de
Informações de Diretório, a operação de listar
retorna os nomes distintos relativos de suas
entradas subordinadas.
• Dado um conjunto de critérios de seleção,
pequisar identifica as entradas de interesse numa
sub-árvore na AID e retorna a informação extraída
dessas entradas.
Operações de Modificação
• Três Operações são usadas para manter a
informação armazenada nos nodos folhas da
AID:
– adicionar (add)
– remover (remove)
– modificar (modify).
• Controles de acesso sobre adicionar,
remover e modificar são decisões a cargo do
implementador.
Operação de Abandono
• Abandono (abandon) pode ser invocado por
um AUD - Agente de Usuário de Diretório,
após uma operação anteriormente invocada,
para dizer ao ASD que não há mais interesse
nos resultados da mesma.
• Deve-se notar que o abandono não
necessariamente cancela a operação.
• Cancelar a operação poderia ser difícil de
efetuar, dada a natureza distribuída do
Diretório.
LDAP
• Lightweight Directory Access Protocol
(LDAP)
– subconjunto do X.500 DAP sem o overhead do
ASN.1 ou da pilha OSI
– Destinado a rodar em qualquer destop
• Roda sobre TCP
• Pode ser usado para acessar um servidor
LDAP independente ou um servidor X.500
indiretamente, via servidor LDAP
Versões LDAP
• 1993 primeira versão
• 1996 LDAPv2
• 1997 LDAP v3
Download

X.500 e LDAP