Hello,
I'm trying to enable unique overlay to enforce uniqueness of uid
and mail attributes with no luck. My server is debian 7 based with
packaged slapd (2.4.31]. Here's the config for the unique overlay :
DN: cn=module{1},cn=config
objectClass: olcModuleList
objectClass: olcConfig
objectClass: top
cn: module{1}
olcModuleLoad: {0}memberof
olcModuleLoad: {1}refint
olcModuleLoad: {2}unique
olcModulePath: /usr/lib/ldap
DN: olcOverlay={4}unique,olcDatabase={1}hdb,cn=config
objectClass: olcUniqueConfig
objectClass: olcOverlayConfig
objectClass: olcConfig
objectClass: top
olcOverlay: {4}unique
olcUniqueURI: ldap:///?mail?sub
olcUniqueURI: ldap:///?uid?sub
assuming the configuration is good, I've tried to create 2 entries :
uid=test,ou=people,dc=mydomain,dc=com and
uid=test2,ou=people,dc=mydomain,dc=com with the same mail :
test@mydomain.com => created without error.
change mail to test2@mydomain.com on entry
uid=test2,ou=people,dc=mydomain,dc=com works
going back to test@mydomain.com => no error
The first time, I've used the main administrative account. So I
created a sub administrator account, changed the ACLs, fine. Deleted
the two entries, recreated the two entries with the same mail
without error.
I've tried to put slapd in debug mode, the only ting I've noticed is
:
51f7df1e >>> dnPrettyNormal:
<uid=test2,ou=people,dc=mydomain,dc=com>
51f7df1e <<< dnPrettyNormal:
<uid=test2,ou=people,dc=mydomain,dc=com>,
<uid=test2,ou=people,dc=mydomain,dc=com>
51f7df1e ==> unique_modify
<uid=test2,ou=people,dc=mydomain,dc=com>
51f7df1e unique_modify: administrative bypass, skipping
51f7df1e bdb_dn2entry("uid=test2,ou=people,dc=mydomain,dc=com")
51f7df1e bdb_entry_get: rc=0
If someone has a clue...
Rgds
--
Philippe MARASSE
Service Informatique - Centre Hospitalier Henri Laborit
CS 10587 - 370 avenue Jacques Coeur
86021 Poitiers Cedex
Tel : 05.49.44.57.19