O modelo de informação do protocolo LDAP defini o tipo de dados podendo ser estocados no diretório LPDA.
Chama-se entrada (em inglês entry) o elemento de base do diretório. Cada entrada do diretório LDAP corresponde a um objeto abstrato ou real (por exemple, uma pessoa, objeto material, parâmetros, ...). Uma entrada..) é constituído de diversos objetos.
Um objeto é constituído de um conjunto de pares chaves/valores chamados atributos permitem definir de maneira única as características do objeto a estocar. Por analogia com a terminologia do objeto fala-se de uma classe de objetos , quer dizer o conjunto dos atributos que ele deve comportar. De qualquer forma um objeto é uma "instanciação" da classe do objeto, quer dizer um conjunto de atributos com valores particulares.
Eis um exemplo de entrada do diretório:
| atributo | valor de atributo |
|---|---|
| cn: | Pillou Jean-Francois |
| uid: | jfpillou |
| telephonenumber: | 06209937xx |
| mail: | webmaster@commentcamarche.net
jeff@commentcamarche.net |
Assim chama-se esquema (mais exatamente em inglês Directory Schema) o conjunto das definições de objetos e de atributos que um servidor LDAP pode gerar bem como sua sintaxe.
Desta maneira, um diretório pode comportar somente entradas correspondentes à uma classe de objeto no esquema. O esquema é, com efeito, estocado no diretório em um lugar específico (trata-se, por ser exato, de uma instancia da classe subesque).
Graças ao esquema do diretório pode garantir de maneira autônoma a validade dos registros e de sua sintaxe. Quando uma entrada for criada no diretório, este verifica sua conformidade à classe de objetos, fala-se então de esquema checking.
Cada entrada é constituída por um conjunto de atributos (pares chave/valor) que permite caracterizar o objeto bem como a entrada definida. Distinguem-se habitualmente dois tipos de atributos:
Eis as principais sintaxes atributos definidas no protocolo LDAP v3 :
| sintaxe de atributo | descrição |
|---|---|
| binary | boolean | Atributo constituído de um booleano (verdadeiro ou falso) |
| dn | Dirigir para um objeto do diretório detectado por seu distinguished name |
| Directory string | Atributo constituído por uma cadeia de caracteres no formato UTF-8 |
| integrar | Atributo constituído de um inteiro |
| telephoneNumber | Numero de telefone |
Eis as principais regras de comparação de atributos definidos pelo standard LDAP v3 :
| regra de comparação LDAP | regra de comparação X500 | descrição |
|---|---|---|
| cis | caseIgnoreMatch | Atributo texto não sensível à quebra |
| ces | caseExactMatch | Atributo texto sensível à quebra |
| tel | telephoneNumberMatch | Atributo texto que representa um número de telefone (as vírgulas e os espaços sao ignorados na busca) |
| int | integerMatch | Atributo inteiro (para uma comparação digital) |
| dn | distinguishedName | Nome de entrada . Permite de comparar duas entradas |
| bin | octetStreamMatch | Atributo binário. Permite comparar octeto |
| bin | booleanMatch | Atributo booleano. Permite comparar dois atributos booleanos. |
LDAP defini classes e tributos padrão que convém para a maioria das aplicações. Estes atributos devem imperativamente ser implementados pelos servidores de diretórios LDAP v3. Isto permite certa homogeneidade entre os diferentes diretórios.
Eis uma pequena lista não exaustiva dos principais atributos usuários definidos pelo standard LDAP v3:
| Atributo | Descrição | ||
|---|---|---|---|
| aliasedObjectName | DN do objeto inclusive aquele em curso é um aliás. | ||
| authorityRevocationList | Lista de certificado revocados pela autoridade encarregado de os | ||
| businessCategory | c | Código do pais em duas letras (respeitando o standard ISO 3166]) | |
| caCertificate | Certificado da autoridade de regulação | ||
| certificadorevocaçãolista | Lista dos certifaciados revocados pela autoridade de regulação | ||
| cn | Nome do objeto (common name) | ||
| descrição | Descrição do objeto | ||
| distinguishedName | Nome distinguido (utilizado por outros atributos por herança) | ||
| facsimileTelephoneNumber | Número de fax | ||
| givenName | Nome da pessoa | ||
| houseIdentifier | Identificador de um grupo | ||
| iniciais | Iniciais de uma pessoa | ||
| internationalSDNNumber | Número ISDN | ||
| l | localidade do objeto (geograficamente) | ||
| membro | Distinguished Nome dos membros | ||
| name | Nome (utilizado por outros atributos; por heranças r por outros atributo por herança. | ||
| o | Nome da organização | ||
| objectClass | Classe de objetos | ||
| ou | Unidade de organização (ramificação da organização) | ||
| owner | Nome do proprietário do objeto | ||
| postalAddress | Endereço postal (sem código postal) | ||
| postalCode | Code postal | ||
| postalOfficeBox | Caixa de entrada (postale) | presentationAddress<td class="ccm"> Endereço rede da apresentação do objeto (geralmente uma URL para apresentação online) | |
| protocoloinformação | Atributo complementar à presentationAddress padrão definir o protocolo | ||
| registeredAddress | seeAlso | DN do objeto complementar | |
| serialNumber | Número de série do objeto | ||
| sn | Nome de família da pessoa (surname) | ||
| st | Estado ou região (state) | ||
| street | Nome da rua e similar (boulevard, ...) | ||
| telephoneNumber | Número de telefone | ||
| telexNumber | Número de telex | ||
| title | Título da pessoa (diferente de função) | ||
| uid | Identificador único do objeto | ||
| userCertificate | Certificado do usuário | ||
| userPassword | Senha do usuário |
Eis uma pequena kista não exaustiva dos principais atributos operacionais definidos pelo standard LDAP v3 :
| Atributo | Descrição |
|---|---|
| atributoetipo | Lista dos atributos de diretório. Este operador operacional faz parte do esquema de diretório descrito pelo objeto subesquema |
| altServers | Lista dos servidores LDAP alternativos em caso de estragos deste último. |
| createTimestamp | creatorsName | Contém DN do objeto tendo servido à criação do objeto, e assim está presente em todo o objeto. Seu concorrente é único e ele não pode ser modificado pelo usuário |
| matchingRules | Contém o conjunto das regras de comparação. Este operador faz parte do esquema do diretório descrito pelo objeto subesquema |
| matchingRuleUse | Contém o conjunto dos atributos utilizando cada regra de comparação. Este operacional faz parte do esquema do diretório descrito pelo objeto subesquema |
| modifiersName | Contém o DN do objeto utilizado para se identificar durante a modificação. Ele está presente em todos os objetos modificados pelo comando modify. Não pode ser modificado pelo usuário. |
| modifyTimestamp | Contém a data da última modificação do objeto. Eles estão presente em todos os objetos modificados modify. Sua ocorrência é única e não pode ser modificado pelo usuário. |
| namingContexts | Contém o conjunto dos contextos suportados pelo servidor. Sua ocorrência é única e ele pose ser modificado por um usuário. |
| objectClasses | Contém o conjunto das classes e objetos. Este operador operacional faz parte do diretório descrito pelo objeto subesquema |
| subschemaSubentry | Contém o DN do objeto que contém o diretório (subesquema) |
| supportedControl | Contém o conjunto dos OID dos controles complementares adicionados ao diretório |
| supportedExtensions | Contém o conjunto dos OID das extensões complementares (funções usuários) adicionadas ao diretório |
| supportedLDAPVersion | Contém as versões do protocolo protocole LDAP geradas pelo servidor |
| supportedSASLMechanisms | Contém a lista dos mecanismos SASL pelo diretório LDAP |
Por analogia com a terminologia do objeto fala-se classe do objeto para designar a estrutura de um objeto, quer dizer o conjunto dos atributos que ele deve comportar. Desta forma, dir-se-á que um objeto é uma « instanciação » da classe do objeto, quer dizer, um conjunto de tributos com valores particulares.
Uma classe de objetos é assim composta de um conjunto de tributos obrigatórios (que devem ser registrados nos objetos que dele resultam) e eventualmente dos facultativos.
Distinguem-se diversos tipos de classes de objetos :
Uma das características interessantes das classes de objetos LDAP é a possibilidade em utilizar a herança.
Assim a classe de mais alto nível é a casa top da qual todas as classes de objetos derivam. Com LDAP somente a herança simples é autorizada (então sem herança múltipla), quer dizer que uma classe pode derivar uma só classe, mas uma classe pode ter diversas filhas.
O exemplo seguinte mostra o princípio de herança LDAP com algumas classes de objetos standards:

Os atributos são caracterizados por :
LDAP fornece um conjunto de nove funções (chamadas às vezes procedimentos ou operações) de base para efetuar solicitações sobre os dados para buscar, modificam apagar entradas nos diretórios.
As operações são, geralmente, classificadas em três categorias :
Eis a lista das principais operações que LDAP pode efetuar:
| Operação | Descrição |
|---|---|
| Abandono | Abandono da operação precedentemente enviadas ao servidor |
| Add | Adição de uma entrada ao diretório |
| Bind | Inicia uma nova sessão sobre o servidor |
| Compara | Compara as entradas de um diretório de acordo com os critérios. |
| Delete | Extended | Efectua operações expandidas |
| Rename | Modifica o nome de uma entrada |
| Search | Busca entradas de um diretório |
| Unbind | Termina uma sessão em um servidor LDAP |
LDAP fornece um formato de troca (LDIF, Lightweight Data Interchange Format) que permite importar e exportar dados de um diretório com um simples arquivo texto. A maioria dos servidores LDAP suportam este formato, o que permite uma grande interrogabilidade entre eles.
A sintaxe deste formato é a seguinte:
[<id>] dn: <distinguished name> <atributo> : <valor> <atributo> : <valor> ...