Passa al contenuto principale

6. Considerazioni sulla sicurezza (Security Considerations)

LDAP trasporta informazioni di autenticazione, dati di directory e risultati correlati al controllo degli accessi; le implementazioni devono pertanto trattare seriamente la riservatezza (confidentiality), l'integrità (integrity) e l'autenticazione (authentication). Quando il contenuto della directory o le credenziali devono essere protetti, client e server DOVREBBERO utilizzare StartTLS o un altro meccanismo di trasporto protetto, e seguire i metodi di autenticazione e i meccanismi di sicurezza LDAP definiti nella RFC 4513.

L'accesso anonimo, il simple bind e le password in chiaro espongono informazioni sensibili su connessioni non protette. In fase di deployment conviene limitare l'ambito dei dati visibili alle query anonime, evitare il trasferimento di password su canali non cifrati e validare adeguatamente l'identità del server, al fine di ridurre il rischio di attacchi man-in-the-middle.

Un'operazione LDAP può rivelare la struttura della directory, il nome dell'attributo, il distinguished name e lo stato di errore. Il server deve decidere, in base alla propria politica di controllo degli accessi, se restituire un diagnosticMessage, un matchedDN o un referral precisi, ed evitare di rivelare l'esistenza di un oggetto tramite differenze di errore.

Le implementazioni dovrebbero inoltre difendersi dagli attacchi di esaurimento delle risorse (resource exhaustion). L'operazione Search può restituire un elevato numero di entry o attivare costosi calcoli di corrispondenza; il server deve pertanto limitare il consumo mediante limiti di dimensione (size limit), di tempo (time limit), amministrativi (administrative limit) e la politica di autorizzazione successiva all'autenticazione.