Constraint
1. Présentation
La fonctionnalité "constraint" est utilisée afin de s’assurer que les valeurs d’un ou plusieurs attributs correspondent bien à la syntaxe attendue. En effet, ce contrôle peut s’avérer utile lorsque des attributs attendent des valeurs de type canoniques bien connues, comme des numéros de téléphone, des codes postaux, des FQDN, etc.
2. Exemple de configuration
1.	Il faut tout d’abord charger le module "constraint.la" dans l’entrée : dn: cn=module{0},cn=config	
2.	Puis, il faudra appliquer cette fonctionnalité au niveau de l’entrée de l’annuaire ciblé (ex. olcDatabase={1}hdb,cn=config) à l’aide d’une commande ldapadd.	
dn: olcOverlay=constraint,olcDatabase={1}hdb,cn=config 
objectClass: olcOverlayConfig 
objectClass: olcConstraintConfig 
olcOverlay: constraint 
olcConstraintAttribute: jpegPhoto size 131072 
olcConstraintAttribute: phoneNumber count 3
Dans cet exemple sont configurées deux contraintes pour les attributs jpegPhoto et phoneNumber : la taille maximale de l’image pour le premier et le nombre de numéros de téléphone maximum pour le second. Il est possible de définir des règles bien plus complexes. Pour plus d’informations, taper ’man slapo-constraint’.