LDAP atributos de vários valores filter

1

Não consigo encontrar a mesma pergunta, mas acho que é um problema regular. Eu tenho usuário LDAP:

dn: uid=alise,ou=peoples,dc=acme,dc=com
objectClass: inetOrgPerson
objectClass: top
cn: alise
sn: alise
uid: alise
userPassword: {SCHEME}password
mail: [email protected]
mail: [email protected]
mailAlias: [email protected]
mailAlias: [email protected]

Eu preciso retornar o atributo mail, mas filtrado por domínio. Por exemplo, se eu pesquisar:

ldapsearch -xLLL -b ou=peoples,dc=withsound,dc=ru '([email protected])' mail

Eu recebo:

dn: uid=alise,ou=peoples,dc=acme,dc=com
mail: [email protected]
mail: [email protected]

Mas eu preciso de algo como:

ldapsearch -xLLL -b ou=peoples,dc=withsound,dc=ru '([email protected])' mail=*domain1.tld


dn: uid=alise,ou=peoples,dc=acme,dc=com
mail: [email protected]

Eu não posso simplesmente usar | grep domain1.tld porque eu uso a pesquisa LDAP no Postfix

Eu realmente não quero separar usuário e fazer apenas um campo de e-mail ...

    
por Anatoly 17.08.2017 / 09:59

1 resposta

2

Um termo de pesquisa como este deve ajudar:

(&([email protected])(mail=*domain1.tld))

Os termos de pesquisa do LDAP são combinados assim:

(Operator(filter)(filter)(filter)...)

com Operator sendo & (AND), | (OR) e ! (NOT).

    
por 17.08.2017 / 11:01