Can't find same question, but I think it's regular issue. I have LDAP user:
dn: uid=alise,ou=peoples,dc=acme,dc=com
objectClass: inetOrgPerson
objectClass: top
cn: alise
sn: alise
uid: alise
userPassword: {SCHEME}password
mail: alise@domain1.tld
mail: alise@domain2.tld
mailAlias: bill@domain1.tld
mailAlias: bill@domain2.tld
I need to return mail attribute, but filtered by domain. For example if I search:
ldapsearch -xLLL -b ou=peoples,dc=withsound,dc=ru '(mailAlias=bill@domain1.tld)' mail
I get:
dn: uid=alise,ou=peoples,dc=acme,dc=com
mail: alise@domain1.tld
mail: alise@domain2.tld
But I need something like:
ldapsearch -xLLL -b ou=peoples,dc=withsound,dc=ru '(mailAlias=bill@domain1.tld)' mail=*domain1.tld
dn: uid=alise,ou=peoples,dc=acme,dc=com
mail: alise@domain1.tld
I can't simply use | grep domain1.tld cause I use LDAP search in Postfix
I really don't want to separate user and make only one email field…
Best Answer
A search term like this should help:
LDAP search terms get combined like this:
with
Operator
being&
(AND),|
(OR) and!
(NOT).