Lightweight Directory Access Protocol (Português)

AddEdit

The ADD operation inserts a new entry into the directory-server database. Se o nome distinto em adicionar pedido já existe no diretório e, em seguida, o servidor não irá adicionar uma entrada duplicada, mas vai definir o código de resultado em adicionar resultado em decimal 68, “entryAlreadyExists”.

  • LDAP-compliant servers will never dereference the distinguished name transmitted in the add request when attempting to locate the entry, that is, distinguished names are never de-aliased.,
  • LDAP-compliant servers will ensure that the distinguished name and all attributes conform to naming standards.
  • A entrada a ser adicionada não deve existir, e o superior imediato deve existir.

No exemplo acima, uid=user,ou=people,dc=example,dc=com não deve existir, e ou=people,dc=example,dc=com deve existir.

Bind (autenticar)Edit

quando uma sessão LDAP é criada, ou seja, quando um cliente LDAP se conecta ao servidor, o estado de autenticação da sessão é definido como anônimo. A operação BIND estabelece o estado de autenticação para uma sessão.,

BIND simples e SASL PLAIN pode enviar o DN e a senha do usuário no texto simples, de modo que as conexões utilizando simples ou SASL Plain devem ser criptografadas usando Transport Layer Security (TLS). O servidor tipicamente verifica a senha contra o atributo no item nomeado. O ‘BIND’ anónimo (com DN e senha vazias) repõe a ligação ao estado anónimo.

SASL (Simple Authentication and Security Layer) BIND fornece serviços de autenticação através de uma série de mecanismos, por exemplo, Kerberos ou o certificado de cliente enviado withTLS.,

BIND também define a versão do protocolo LDAP, enviando um número de versão na forma de um inteiro. Se o cliente solicitar uma versão que o servidor não suporta,o servidor deve definir o código do resultado na resposta de BIND ao código para um erro de Protocolo. Normalmente, os clientes devem usar LDAPv3, que é a falha no protocolo, mas nem sempre nas bibliotecas LDAP.

BIND teve que ser a primeira operação em uma sessão em LDAPv2, mas não é necessária a partir de LDAPv3., No LDAPv3, cada pedido de binds com sucesso altera o estado de autenticação da sessão e cada pedido de binds sem sucesso repõe o estado de autenticação da sessão.

DeleteEdit

para apagar uma entrada, um cliente LDAP transmite um pedido de delete devidamente formado para o servidor.,

  • Uma solicitação de exclusão deve conter o nome distinto da caixa de entrada para ser apagado
  • Solicitação de controles também podem ser anexados à solicitação de exclusão
  • Servidores não cancelam aliases quando do processamento de um pedido de eliminação
  • Só folha (entradas entradas com nenhum subordinados) pode ser eliminado por um pedido de eliminação., Alguns servidores de apoio operacional atributo hasSubordinates cujo valor indica se uma entrada tem qualquer subordinado entradas, e alguns servidores de apoio operacional atributo numSubordinates indica o número de entradas de subordinada para a entrada que contém o numSubordinates atributo.
  • alguns servidores suportam o controlo do pedido de remoção da sub-árvore permitindo a eliminação do DN e de todos os objectos subordinados ao DN, sujeitos a controlos de acesso., Os pedidos de supressão estão sujeitos a controlos de acesso, ou seja, se uma ligação com um determinado estado de autenticação será autorizada a apagar uma dada entrada é regida por mecanismos de controlo de acesso específicos do servidor.

Search and CompareEdit

a operação de pesquisa é usada tanto para procurar como para ler os itens. Seus parâmetros são:

baseObject o nome da entrada do objeto de base (ou possivelmente a raiz) em relação à qual a pesquisa deve ser realizada. scope What elements below the baseObject to search., Isso pode serBaseObject(pesquisa apenas a chamada de entrada, normalmente usado para ler uma entrada),singleLevel(entradas imediatamente abaixo da base DN), ouwholeSubtree(a subárvore inteira começando na base DN). critérios de filtragem a utilizar na selecção dos elementos abrangidos pelo âmbito de Aplicação., Por exemplo, o filtro(&(objectClass=person)(|(givenName=John)(mail=john*)))irá selecionar “pessoas” (elementos de objectClassperson), onde as regras de correspondência paragivenNameemaildeterminar se os valores para esses atributos correspondam ao filtro de declaração. Note que um equívoco comum é que os dados LDAP são sensíveis a maiúsculas, enquanto que na verdade regras de correspondência e regras de ordenação determinam correspondências, comparações e relações de valor relativo., Se o exemplo que os filtros foram necessários para coincidir com o caso de o valor do atributo, um sistema de correspondência de filtro deve ser utilizado, por exemplo,(&(objectClass=person)(|(givenName:caseExactMatch:=John)(mail:caseExactSubstringsMatch:=john*)))derefAliases Se e como seguir alias (entradas entradas que se referem a outras entradas), os atributos, os atributos Que devem retornar em resultado entradas. sizeLimit, tempo limite máximo de entradas para retornar, e tempo máximo para permitir que a pesquisa para executar. Estes valores, no entanto, não podem sobrepor quaisquer restrições que o servidor coloca no limite de tamanho e no limite de tempo. typesOnly Return attribute types only, not attribute values.,

O Servidor devolve os itens correspondentes e as referências de continuação potencialmente. Estes podem ser devolvidos em qualquer ordem. O resultado final incluirá o código do resultado.

a operação de comparação toma um DN, um nome de Atributo e um valor de Atributo, e verifica se o item nomeado contém esse atributo com esse valor.

ModifyEdit

a operação de modificação é usada pelos clientes LDAP para solicitar que o servidor LDAP faça alterações aos itens existentes. As tentativas de modificar entradas que não existem irão falhar. Modificar pedidos estão sujeitos a controles de acesso como implementado pelo servidor.,

a operação de modificação requer que o nome distinto (DN) da entrada seja especificado, e uma sequência de alterações. Cada alteração na seqüência deve ser um dos seguintes:

  • add (adicionar um novo valor, que não deve existir no atributo)
  • apagar (excluir um valor existente)
  • replace (substituir um valor existente com um novo valor)

LDIF exemplo de adição de um valor para um atributo:

dn: dc=example,dc=comchangetype: modifyadd: cncn: the-new-cn-value-to-be-added-

Para substituir o valor de um atributo existente, Use a substituir a palavra-chave., Se o atributo for multi-valorizado, o cliente deve especificar o valor do atributo a atualizar.

para remover um atributo de uma entrada, use a palavra-chave delete e a modificação do designador changetype. Se o atributo for multi-valorizado, o cliente deve especificar o valor do atributo a excluir.

Existe também uma extensão incremental de modificação que permite que um valor de atributo incrementável seja aumentado por uma quantidade especificada., O seguinte exemplo usando incrementos LDIF empregeenumber por 5:

dn: uid=user.0,ou=people,dc=example,dc=comchangetype: modifyincrement: employeeNumberemployeeNumber: 5-

quando os servidores LDAP estão em uma topologia replicada, os clientes LDAP devem considerar usar o controle pós-leitura para verificar atualizações em vez de uma pesquisa após uma atualização. O controle pós-leitura é projetado para que as aplicações não precisam emitir um pedido de pesquisa após uma atualização – é uma má forma de recuperar uma entrada com o único propósito de verificar que uma atualização funcionou por causa da replicação eventual modelo de consistência., Um cliente LDAP não deve assumir que ele se conecta ao mesmo servidor de diretório para cada pedido porque arquitetos podem ter colocado balancers de carga ou proxies LDAP ou ambos entre clientes LDAP e servidores.

modificar DNEdit

modificar DN (mover / mudar o nome) toma a nova RDN( nome relativo distinto), opcionalmente o DN do Novo Pai, e uma bandeira que indica se deve remover o(S) Valor (s) no item que corresponde ao RDN antigo. O servidor poderá suportar a mudança de nome de sub-pastas inteiras.,

uma operação de atualização é atômica: outras operações irão ver o novo item ou o antigo. Por outro lado, LDAP não define transações de várias operações: Se você ler uma entrada e depois modificá-la, outro cliente pode ter atualizado a entrada entretanto. Os servidores podem implementar extensões que suportam isso, no entanto.

Operationsedit

a operação estendida é uma operação LDAP genérica que pode definir novas operações que não faziam parte da especificação original do protocolo. StartTLS é uma das extensões mais significativas., Outros exemplos incluem cancelar e modificar senha.

StartTLSEdit

a operação StartTLS estabelece a segurança da camada de transporte (descendente de SSL) na conexão. Pode fornecer confidencialidade dos dados (para proteger os dados de serem observados por terceiros) e/ou proteção da integridade dos dados (que protege os dados de adulteração). Durante a negociação do TLS, o servidor envia seu certificado X. 509 para provar sua identidade. O cliente também pode enviar um certificado para provar a sua identidade. Depois de fazer isso, o cliente pode então usar SASL/EXTERNAL., Ao usar o SASL / externo, o cliente solicita que o servidor obtenha sua identidade a partir de credenciais fornecidas em um nível mais baixo (como TLS). Embora tecnicamente o servidor possa usar qualquer informação de identidade estabelecida em qualquer nível inferior, normalmente o servidor usará a informação de identidade estabelecida por TLS.os servidores

também suportam frequentemente o protocolo LDAPS não-padrão (“LDAP seguro”, comumente conhecido como”LDAP sobre SSL”) em uma porta separada, por padrão 636., LDAPS difere do LDAP de duas maneiras:1) ao conectar, o cliente e servidor estabelecem TLS antes de quaisquer mensagens LDAP serem transferidas (sem uma operação StartTLS) E2) a conexão LDAPS deve ser fechada após o fechamento TLS.

algumas bibliotecas cliente “LDAPS” só encriptam a comunicação; elas não verificam o nome da máquina com o nome no certificado fornecido.

AbandonEdit

a operação de abandono requer que o servidor interrompa uma operação com o nome de um ID de mensagem. O servidor não precisa honrar o pedido. Nem abandonar nem uma operação abandonada com sucesso enviar uma resposta., Uma operação estendida de Cancelamento semelhante envia respostas, mas nem todas as implementações suportam isso.

UnbindEdit

a operação Unbind abandona quaisquer operações pendentes e fecha a ligação. Não tem resposta. O nome é de origem histórica, e não é o oposto da operação Bind.os clientes

podem interromper uma sessão simplesmente fechando a conexão, mas eles devem usar Unbind. Unbind permite ao servidor fechar graciosamente a conexão e os recursos gratuitos que ele de outra forma manteria por algum tempo até descobrir que o cliente tinha abandonado a conexão., Ele também instrui o servidor para cancelar as operações que podem ser canceladas, e para não enviar respostas para as operações que não podem ser canceladas.

Share

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *