Lightweight Directory Access Protocol (LDAP) è un insieme di protocolli open usati per accedere alle informazioni conservate centralmente attraverso una rete. È basato su X.500 standard per la condivisione della directory, ma è meno complesso e richiede meno risorse. Per questa ragione, LDAP viene indicato come "X.500 Lite."
Come X.500, LDAP organizza le informazioni in una scala gerarchica usando delle directory. Queste directory possono conservare una certa varietà di informazioni e possono anche essere usate in un modo simile al Network Information Service (NIS), abilitando chiunque ad accedere i propri account da qualsiasi macchina sulla rete abilitata LDAP.
In molti casi LDAP viene usato come directory telefonica virtuale, permettendo agli utenti di accedere facilmente alle informazioni di contatto per altri utenti. LDAP è molto più flessibile della directory telefonica, in quanto è capace di effettuare una richiesta ad altri server LDAP nel mondo, fornendo un deposito di informazioni globale ideale. Attualmente, tuttavia, LDAP è più usato all'interno di organizzazioni individuali, come università, uffici governativi, e di compagnie.
LDAP è un sistema client/server. Il server può usare una varietà di database per conservare una directory, ognuna delle quali è ottimizzata per operazioni di lettura veloci. Quando un'applicazione del client LDAP si collega ad un server LDAP, può sia interrogare la directory che cercare di modificarla. Nel caso in cui si verifica una interrogazione, il server può rispondere in modo locale, oppure può fare riferimento alla richiesta di un server LDAP il quale è in possesso di una risposta. Se l'applicazione di un client stà cercando di modificare le informazioni all'interno di una directory LDAP, il server verifica se l'utente possiede il permesso di effettuare il cambiamento, e successivamente aggiunge o aggiorna le informazioni.
Questo capitolo fà riferimento alla configurazione e all'uso di OpenLDAP 2.0, una implementazione della open source dei protocolli LDAPv2 e LDAPv3.
Il beneficio principale nell'uso di LDAP, è rappresentato dal fatto che le informazioni per una intera organizzazione possono essere consolidate in un deposito centrale. Per esempio, invece di gestire gli elenchi di un utente per ogni gruppo, all'interno di una organizzazione, LDAP può essere usato come una directory centrale accessibile da qualsiasi posizione della rete. Dato che LDAP supporta Secure Sockets Layer (SSL) e il Transport Layer Security (TLS), i dati sensibili possono essere protetti da utenti indiscreti.
LDAP supporta anche un numero di database del tipo back-end nei quali archiviare le directory. Ciò conferisce agli amministratori una certa flessibilità nell'impiegare il database che meglio si addice al tipo di informazioni che il server diffonde. Dato che LDAP possiede anche un Application Programming Interface (API) ben definito del client, il numero delle applicazioni abilitate-LDAP sono numerose e in aumento sia in quantità che in qualità.
OpenLDAP 2.0 presenta un numero di contenuti molto importanti.
Supporto LDAPv3 — OpenLDAP 2.0 supporta l'Authentication and Security Layer (SASL), Transport Layer Security (TLS), and Secure Sockets Layer (SSL), insieme ad altri miglioramenti. Molti dei cambiamenti apportati al protocollo, dalla versione 2 di LDAP, sono stati effettuati per rendere LDAP più sicuro.
Supporto IPv6 Support — OpenLDAP supporta il protocollo Internet versione 6.
LDAP tramite IPC — OpenLDAP può comunicare all'interno di un sistema usando un interprocess communication (IPC). Questo permette di aumentare la sicurezza, eliminando il bisogno di comunicare attraverso la rete.
API C aggiornata — Migliora il modo in cui i programmatori possono collegarsi e usare i server della directory LDAP.
Supporto LDIFv1 — Interamente compatibile con la versione 1 di LDAP Data Interchange Format (LDIF).
Server LDAP stand-alone aggiornato — Comprende un sistema di controllo dell'accesso aggiornato, un raggruppamento dei thread, tool più efficaci e altro ancora.