ldapsearch falha ao mostrar resultados do campo personalizado

1

Por que esse comando ldapsearch não mostra nada:

/usr/bin/ldapsearch -x -LLL -h ldapmaster.corpintra.net -b ou=people,ou=Mars,ou=Eng,dc=corpintra,dc=net '(ifxAccStatus=unlocked)' uid ifxAccStatus

O comando a seguir retorna vários resultados mostrando que tenho pessoas com o campo ifxAccStatus=unlocked ou ifxAccStatus=locked :

/usr/bin/ldapsearch -x -LLL -h ldapmaster.corpintra.net -b ou=people,ou=Mars,ou=Eng,dc=corpintra,dc=net '(ifxAccStatus=*)' uid ifxAccStatus

Como só é possível listar usuários com ifxAccStatus = desbloqueado?

Obrigado Oz

    
por Oz123 03.08.2012 / 14:09

1 resposta

0

Você provavelmente tem uma definição de esquema incompleta - não é suficiente apenas definir seu atributo SYNTAX (por exemplo, directoryString ou IA5String OID), isso não define nenhum regras implícitas correspondentes (operações de comparação). Você precisa fazer isso explicitamente com EQUALITY e (se apropriado) SUBSTR , por exemplo:

attributetype ( 1.3.6.1.4.1.xxxxx.1.2.3
    NAME     'ifxAccStatus'
    DESC     'account lock status'
    SYNTAX   1.3.6.1.4.1.1466.115.121.1.26    
    SINGLE-VALUE
    EQUALITY caseIgnoreIA5Match
    SUBSTR   caseIgnoreIA5SubstringsMatch
    USAGE    userApplications
)

Da mesma forma, não haverá regras de pedido implícitas , isso também precisaria ser especificado se você precisar ordenar os resultados (por exemplo, caseIgnoreOrderingMatch ), embora isso normalmente não pode causar tantos problemas quanto perder operações de igualdade e substring.

    
por 02.02.2013 / 11:53

Tags