Erro de sobreposição de política de senha do OpenLDAP ao carregar

7

Estou tentando carregar a sobreposição da política de senhas, mas estou com o seguinte erro:

ldapadd  -Wx -D "cn=Manager,cn=config"  -f overlay.ldif 
Enter LDAP Password: 
adding new entry "olcOverlay=ppolicy,olcDatabase={0}bdb,cn=config"
ldap_add: No such object (32)
    matched DN: cn=config

Este é o conteúdo do arquivo:

dn: olcOverlay=ppolicy,olcDatabase={0}bdb,cn=config
olcOverlay: ppolicy
objectClass: olcOverlayConfig
objectClass: olcPPolicyConfig
olcPPolicyDefault: cn=default,ou=Policies,dc=site,dc=com
olcPPolicyHashCleartext: TRUE
olcPPolicyUseLockout: FALSE

No log eu encontrei:

config_add_internal: DN="olcOverlay=ppolicy,olcDatabase={0}bdb,cn=config" not child of DN="cn=config"

Estou usando o CentOS 6.3 e o openldap-servers-2.4.23-26.el6_3.2.x86_64.

    
por user27238 25.01.2013 / 20:58

2 respostas

3

Alguns dos registros no banco de dados cn=config do OpenLDAP usam prefixos de números ( {0} , {1} , etc). Então, quando você vai modificar algo no banco de dados cn=config , você precisa ter certeza de que está usando o DN correto (Nome Distinto: o caminho para o registro). No OpenLDAP ao usar cn=config , a primeira entrada olcDatabase é geralmente o próprio banco de dados de configuração ( olcDatabase={0}config,cn=config ). No meu sistema específico, meu banco de dados principal é olcDatabase={1}hdb,cn=config .

Se você não sabe o DN do olcDatabase que precisa modificar, a única maneira de saber é fazer uma pesquisa e verificar os resultados.

Quanto a esses números (o {0} bit), eles servem a 2 propósitos.

  1. Eles permitem que você tenha várias entradas com o mesmo nome.
    Você poderia ter 2 olcDatabase=bdb bancos de dados, em que você teria um problema, como você não pode ter 2 entradas com o mesmo DN.
  2. Eles permitem o pedido.
    O protocolo LDAP não se importa com a ordem. Mas você pode prefixar os RDNs com {X} para permitir o pedido. Neste caso específico, não consigo pensar em nenhum motivo que explique por que os bancos de dados precisam ser solicitados. Mas há outros casos de uso críticos, como em cn=schema,cn=config . Em cn=schema , um esquema pode definir uma classe de objeto que depende de um atributo de um esquema anterior. Como tal, os esquemas devem ser carregados em ordem.
por 27.11.2013 / 03:47
1

olcDatabase={0}bdb,cn=config

precisa ser alterado para

olcDatabase={2}bdb,cn=config

    
por 28.01.2013 / 21:09