Aller au contenu principal

6. Considérations de sécurité (Security Considerations)

LDAP transporte des informations d'authentification, des données d'annuaire et des résultats liés au contrôle d'accès ; les implémentations doivent donc traiter sérieusement la confidentialité (confidentiality), l'intégrité (integrity) et l'authentification (authentication). Lorsque le contenu de l'annuaire ou les informations d'identification doivent être protégés, les clients et serveurs doivent utiliser StartTLS ou un autre mécanisme de transport protégé, et respecter les méthodes d'authentification et mécanismes de sécurité LDAP définis dans la RFC 4513.

L'accès anonyme, le simple bind et les mots de passe en clair exposent des informations sensibles sur des connexions non protégées. Lors du déploiement, il convient de limiter l'étendue des données visibles par les requêtes anonymes, d'éviter la transmission de mots de passe sur des canaux non chiffrés, et de valider suffisamment l'identité du serveur afin de réduire le risque d'attaque de l'homme du milieu (man-in-the-middle).

Une opération LDAP peut révéler la structure de l'annuaire, le nom d'attribut, le nom distingué (distinguished name) et l'état d'erreur. Le serveur doit décider, selon sa politique de contrôle d'accès, s'il renvoie un diagnosticMessage, un matchedDN ou un referral précis, et éviter de divulguer l'existence d'un objet par des différences d'erreur.

Les implémentations doivent également se protéger contre les attaques d'épuisement des ressources (resource exhaustion). L'opération Search peut renvoyer un grand nombre d'entrées ou déclencher des calculs de correspondance coûteux ; le serveur doit donc limiter la consommation à l'aide de limites de taille (size limit), de temps (time limit), administratives (administrative limit) et de la politique d'autorisation après authentification.