A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

X.500 e LDAP Liane Tarouco.

Apresentações semelhantes


Apresentação em tema: "X.500 e LDAP Liane Tarouco."— Transcrição da apresentação:

1 X.500 e LDAP Liane Tarouco

2 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

3 Serviços X.500 X.500 é especificado como um serviço da Camada de Aplicação no mundo OSI, porém 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.

4 Serviço de diretórios é uma aplicação (camada 7 do modelo OSI) que interopera usando protocolos definidos nas recomendações da série X.500

5 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

6

7 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

8 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

9 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

10 Nome distinto CN=Steve Kille, O=Isode Limited, C=GB
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, , etc. Exemplo de ND: CN=Steve Kille, O=Isode Limited, C=GB

11 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á.

12 Nomes A X.500 especifica parcialmente regras para a estrutura dos nomes e os valores que estes nomes ou partes deles podem assumir.

13 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

14 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

15 AID - Á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.

16 Exemplo { Country = Brasil,
Organization = Empresa Geral de Acessórios, {Division = Auditoria, Estado = RS}, NomePessoal = Francisco Guedes}.

17 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 as entidades de protocolo que cooperam para prover o Serviço de Diretórios.

18

19 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

20 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).

21 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.

22 Geográfico Tipos de atributos geográficos associam uma região ou posição geográfica com um objeto. Exemplos incluem país, estado e localidade.

23 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.

24 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.

25 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.

26 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 fac-simile, endereços X.121, endereços RDSI e informação de endereçamento usada para telegramas.

27 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).

28 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.

29 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.

30 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.

31

32 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

33 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.

34 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 BID-Base de Informações de Diretório. Se não tiver a informação solicitada pode ocorrer uma das seguintes situações: Encadear Disseminar Sugerir

35 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.

36 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.

37 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.

38 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.

39 Protocolos X.500 Conectar e desconectar Operações remotas

40 X.500 é uma aplicação OSI

41 Serviços proporcionados
conexão ao diretório interrogação do diretório modificação do diretório

42 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.

43 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.

44 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 é usado por um AUD para assinalar o fim de uma série de operações. AUD ASD

45 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 contra uma entrada de objeto.

46 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.

47 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.

48 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.

49 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 desktop Roda sobre TCP Pode ser usado para acessar um servidor LDAP independente ou um servidor X.500 indiretamente, via servidor LDAP

50 Versões LDAP 1993 primeira versão 1996 LDAPv2 1997 LDAP v3

51 Aplicações do LDAP Localizar usuários e recursos da rede
Gerenciar usuários e recursos da rede Recursos on-line (Dublin Core) Learning Objects (IEEE) Autenticar e proteger (segurança) usuários e recursos da rede

52 Aspectos a considerar Replicação do diretório Controle de acesso

53 LDAP x DNS LDAP não é substitutivo para DNS
Não pode competir com a performance orientada ao alto tráfego do DNS não orientado a conexões usa porta 389 mas pode usar outras portas usa o protocolo LDAP para atendimento

54 Estrutura do LDAP

55 Modelo de informação Coleção de atributos e valores
Tipo de de dados armazenados no diretório Praticamente todo o tipo de informação pode ser colocado no diretório

56 LDAP schema Define os elementos de dados que efetivamente podem ser armazenados num particular servidor e como se relacionam com objetos do mundo real Foram padronizados objetos representando: países organizações pessoas grupos

57 Naming Model Como a informação é organizada e referenciada
Nomes LDAP são hierárquicos Nomes individuais compostos de atributos e valores LDAP permite esquemas flexíveis de nomeação

58 Modelo de segurança Como a informação é protegida contra acesso não autorizado Autenticação extensível permite a clientes e servidores provarem sua identidade unas aos outros Confidencialidade e integridade também podem ser implementadas para proteger a privacidade e contra ataques ativos

59 Modelo de funcionamento
Como os clientes acessam e atualizam a informação bem como o modo pelo qual os dados podem ser manipulados Funções básicas operacionais: add delete modify bind unbind (autenticação) search compare modify DN (distinguished name) abandon (interromper operação em progresso)

60 LDAP protocol Interação entre clientes e servidores e mapeamento sobre TCP/IP Cada LDAP request é portado em uma mensagem e as entradas contidas na resposta a uma pesquisa são transportadas em mensagens separadas

61 Mensagens do LDAP LDAPMessage ::= SEQUENCE { messageID MessageID,
protocolOp CHOICE { bindRequest BindRequest, bindResponse BindResponse, unbindRequest UnbindRequest, searchRequest SearchRequest, searchResponse SearchResponse, modifyRequest ModifyRequest, modifyResponse ModifyResponse, addRequest AddRequest, addResponse AddResponse, delRequest DelRequest, delResponse DelResponse, modifyRDNRequest ModifyRDNRequest, modifyRDNResponse ModifyRDNResponse, compareDNRequest CompareRequest, compareDNResponse CompareResponse, abandonRequest AbandonRequest } Mensagens do LDAP

62 Bind BindRequest ::= [APPLICATION 0] SEQUENCE { version INTEGER ( ), name LDAPDN, authentication CHOICE { simple [0] OCTET STRING, krbv42LDAP [1] OCTET STRING, krbv42DSA [2] OCTET STRING } Iniciar uma sessão entre um cliente e um servidor permitindo a autenticação do cliente para o servidor Deve ser a primeira operação recebida por um servidor de um cliente numa sessão

63 Unbind Encerrar uma sessão UnbindRequest ::= [APPLICATION 2] NULL

64 Search SearchRequest ::= [APPLICATION 3] SEQUENCE { baseObject LDAPDN, scope ENUMERATED { baseObject (0), singleLevel (1), wholeSubtree (2) }, derefAliases ENUMERATED { neverDerefAliases (0), derefInSearching (1), derefFindingBaseObj (2), derefAlways (3) sizeLimit INTEGER (0 .. maxInt), timeLimit INTEGER (0 .. maxInt), attrsOnly BOOLEAN, filter Filter, attributes SEQUENCE OF AttributeType } Permite a um cliente solicitar a execução de uma pesquisa a ser feita pelo servidor

65 Filter Filter ::= CHOICE { and [0] SET OF Filter,
or [1] SET OF Filter, not [2] Filter, equalityMatch [3] AttributeValueAssertion, substrings [4] SubstringFilter, greaterOrEqual [5] AttributeValueAssertion, lessOrEqual [6] AttributeValueAssertion, present [7] AttributeType, approxMatch [8] AttributeValueAssertion }

66 SubstringFilter SubstringFilter SEQUENCE { type AttributeType,
SEQUENCE OF CHOICE { initial [0] LDAPString, any [1] LDAPString, final [2] LDAPString }

67 Modify Permite a um cliente solicitar a modificação da BID (Base de Informações do Diretório) que será feita para ele pelo servidor ModifyRequest ::= [APPLICATION 6] SEQUENCE { object LDAPDN, modification SEQUENCE OF SEQUENCE { operation ENUMERATED { add (0), delete (1), replace (2) }, modification SEQUENCE { type AttributeType, values SET OF AttributeValue }

68 Add Permite a um cliente adicionar uma entrada no diretório
AddRequest ::= [APPLICATION 8] SEQUENCE { entry LDAPDN, attrs SEQUENCE OF SEQUENCE { type AttributeType, values SET OF AttributeValue }

69 Delete Permite a um cliente solicitar a remoção de uma entrada no diretório DelRequest ::= [APPLICATION 10] LDAPDN O pedido contém o Nome Distinto da entrada a seer deletada

70 Modify RDN A operação Modify RDN permite a um cliente alterar o último componente do nome de uma entrada no diretório ModifyRDNRequest ::= [APPLICATION 12] SEQUENCE { entry LDAPDN, newrdn RelativeLDAPDN, deleteoldrdn BOOLEAN }

71 Compare Permite a um cliente comparar uma assertiva que ele provê com uma entrada no diretório CompareRequest ::= [APPLICATION 14] SEQUENCE { entry LDAPDN, ava AttributeValueAssertion }

72 Abandon Permite a um cliente pedir ao servidor para abandonar o atendimento a um pedido em atendimento. AbandonRequest ::= [APPLICATION 16] MessageID

73 Considerações de segurança
A versão do protocolo definida no RFC1777 prove apenas facilidades de autenticação simples usando uma senha não cifrada ou autenticação com o sistema kerberos versão 4

74 LDAP 1, 2 Nas versões 1 e 2 do LDAP não há previsão para que os servidor retornem indicações de outros servidores que os clientes poderiam consultar Mas visando otimizar a performance e a distribuição do diretório o servidor pode retornar aos clientes referência a outros servidores

75 LDAP API Application Program Interface (API) usados em plataformas rodando C/C++, Java Javascript, Perl LDIF- LDAP Interchange Format - oferece formato textual simples para representar entradas do diretório

76

77 LDAP clients LDAP é um protocolo de acesso para cliente.
Existem muitos clientes LDAP embutidos em aplicações tais como


Carregar ppt "X.500 e LDAP Liane Tarouco."

Apresentações semelhantes


Anúncios Google