Por que o ldapsearch não está trabalhando com ligação anônima depois de atualizar o OpenLDAP para a v2.4?

3

Eu tenho uma configuração do OpenLDAP v2.3 que estou usando nos últimos anos. A seguir estão as linhas em slapd.conf para controle de acesso.

access to dn.one="o=abc, c=IN"
        by * read

access to dn.base="o=abc, c=IN"
        by * none

Quando eu faço ldapsearch usando vinculação anônima me dá resultado.

Por exemplo, o seguinte comando dá resultado.

ldapsearch -x -h localhost -b "o=abc,c=IN" 

Agora eu atualizei o sistema operacional, o CentOS de 5.5 para 6.3, então a versão do OpenLDAP é OpenLDAP v2.4 . Nós não mudamos o esquema.

Mas agora o mesmo ldapsearch me dá result: 32 No such object error.

Mas funciona quando adiciono a seguinte linha na configuração do controle de acesso.

access to dn.one="o=abc, c=IN"
        by * read

access to dn.base="o=abc, c=IN"
        by anonymous read
        by * none

Qual pode ser o motivo? Existe algum risco de segurança ao fazer isso?

    
por Sachin Divekar 23.12.2012 / 05:40

1 resposta

1

Eu postei a pergunta na lista de discussão do OpenLDAP e recebi a resposta. Obrigado a Pierangelo Masarati.

No OpenLDAP v2.4, a operação de pesquisa requer privilégios de "pesquisa" no pseudo-atributo "entry" da base de pesquisa, o que não era o caso na v2.3.

homem slapd.access (5):

[...]

The search operation, requires search (=s) privileges on the entry pseudo-attribute of the searchBase (NOTE: this was introduced with OpenLDAP 2.4).

[...]

Portanto, não preciso conceder acesso de leitura ao anônimo para base. Somente O privilégio de pesquisa é o seguinte:

access to dn.base="o=abc, c=IN"
            by anonymous search
            by * none

Eu testei com sucesso.

    
por 23.12.2012 / 18:28

Tags