Il protocollo LDAP (Lightweight Directory Access Protocol) è costituito da una serie di protocolli utilizzati per accedere ai servizi sullo standard X.500 per la condivisione di directory, ma è meno complesso e non richiede grandi risorse. Per tale ragione, LDAP viene spesso chiamato X.500 Light.
Come X.500, LDAP organizza le informazioni in ordine gerarchico servendosi di directory che sono in grado di immagazzinare numerose informazioni e possono anche essere utilizzate a mo' di NIS (Network Information Service), permettendo a chiunque di accedere al loro account da qualsiasi macchina presente sulla rete LDAP abilitata.
In molti casi, tuttavia, LDAP viene utilizzato semplicemente come rubrica virtuale che permette agli utenti di accedere con facilita` alle informazioni relative ai contatti di altri utenti. LDAP, però è più che una semplice guida telefonica, poiché è in grado di propagare le proprie directory ad altri server LDAP in tutto il mondo, fornendo accesso globale all'informazione. Attualmente, LDAP è comunque utilizzata per lo più da organizzazioni individuali, quali università dipartimenti governativi e aziende private.
LDAP è un sistema client-server. Il server può avvalersi di numerosi database per salvare una directory, ciascuno dei quali ottimizzato per operazioni di lettura rapide e sostanziose. Quando un'applicazione di un client LDAP si connette a un server LDAP può interrogare una directory oppure caricare informazioni al suo interno. Nel caso dell'interrogazione, il server risponde oppure, se non può fare a livello locale, puo` delegare il flusso dell'interrogazione a un LDAP di livello superiore che sia in grado di rispondere. Se l'applicazione client cerca di caricare informazioni all'interno di una directory LDAP, il server verifica che l'utente abbia il permesso di attuare la modifica, poi aggiunge o aggiorna le informazione.
Questo capitolo si riferisce alla configurazione e all'utilizzo di OpenLDAP 2.0, un'implementazione Open Source dei protocolli LDAPv2 e LDAPv3.
Il vantaggio principale nell'uso di LDAP è la possibilità di consolidare certi tipi di informazione all'interno della vostra azienda. Per esempio, invece di gestire elenchi di utenti per ogni gruppo all'interno di un'azienda, potete utilizzare LDAP come directory centrale accessibile da chiunque sulla rete. Dal momento, poi, che LDAP supporta i protocolli SSL (Secure Sockets Layer) e TLS (Transport Layer Security), è possibile proteggere i dati importanti da occhi indiscreti.
LDAP supporta anche numerosi database back-end in cui è possibile immagazzinare directory. Questo accorda agli amministratori la flessibilità necessaria per attivare il database più indicato per il tipo di informazione che il server deve diffondere. Inoltre, poiché LDAP ha un'API (Application Programming Interface (API) ben definita, il numero di applicazioni abilitate all'uso di LDAP è elevato e sta ancora crescendo in termini di quantità e di qualità.
Lo svantaggio consiste nel fatto che LDAP può essere abbastanza complesso da configurare.
OpenLDAP 2.0 comprende numerose caratteristiche importanti.
Supporto LDAPv3 — OpenLDAP 2.0 supporta i protocolli SASL (Simple Authentication and Security Layer), TLS e SSL ed è stato sottoposto ad altre migliori. Molte delle modifiche attuate al protocollo rispetto alla versione 2 sono state concepite per rendere LDAP più sicuro.
Supporto IPv6 — OpenLDAP supporta il protocollo Internet Protocol 6 di nuova generazione.
LDAP tramite IPC — OpenLDAP è in grado di comunicare all'interno di una sistema utilizzando la comunicazione interprocess (IPC), che rafforza la sicurezza ovviando alla necessità di comunicare su una rete.
API C aggiornata — migliora il modo in cui i programmatori possono connettersi e utilizzare l'applicazione.
Supporto LDIFv1 — interamente compatibile con le versione 1 di LDIF (LDAP Data Interchange Format).
Server LDAP stand-alone avanzato — comprende un sistema di controllo dell'accesso aggiornato, un raggruppamento dei thread, strumenti migliori e altro ancora.