Eu tenho o seguinte arquivo ldif que estou tentando carregar no openLDAP:
Esquema personalizado sendo criado para o projeto Monas
dn: cn=testSchemas,cn=schema,cn=config
objectClass: olcSchemaConfig
cn: testSchemas
olcAttributeTypes ( 1.3.6.1.4.1.4203.666.1.90
NAME 'competence'
DESC 'The field an individual is qualified'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubStringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{128} )
olcAttributeTypes ( 1.3.6.1.4.1.4203.666.1.91
NAME 'spokenLanguage'
DESC 'The language spoken by a person.'
SUP preferredLanguage
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubStringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} )
olcObjectClasses ( 1.3.6.1.4.1.4203.666.2012.1
NAME 'inetOrgTestPerson'
DESC 'An extension of the inetOrgPerson objectClass to add some additional attributes'
SUP inetOrgPerson
STRUCTURAL
MUST competence
MAY spokenLanguage )
Continuo recebendo o erro:ldapadd: entrada de formato inválido (linha 4): cn=testSchemas,cn=schema,cn=config"e não consigo descobrir o que há de errado. Estou no Ubuntu 12.04 com openldap 2.4.28
Editar: Depois de corrigir o erro sintático do ':' ausente, consegui adicionar o objeto e os atributos (ou assim pensei), mas não consigo vê-los quando executo uma pesquisa, recebo o erro:
ldap_modify: Type or value exists (20)
additional info: modify/add: olcAttributeTypes: value #0 already exists
quando tento adicionar os objetos novamente, significa que eles estão no banco de dados, mas nada aparece na pesquisa.
Responder1
Pelo que posso ver em seu LDIF, estão faltando os dois pontos ( :
) após as palavras-chave olcAttributeTypes
e olcObjectClasses
. Deve ficar assim:
olcAttributeTypes: ( 1.3.6.1.4.1.4203.666.1.90
NAME 'competence'
...