Impossível despejar o banco de dados LDAP após as alterações

2

Eu adicionei um atributo ao meu banco de dados LDAP executando

ldapmodify -QY EXTERNAL -H ldapi:/// -f openssh-lpk.schema

como root, onde openssh-lpk.schema contém isso:

# Author: Eric AUGE <[email protected]>
#
# Based on the proposal of : Mark Ruijter
#
version: 1

dn: cn=openssh-lpk,cn=schema,cn=config
changetype: add
cn: openssh-lpk
objectClass: olcSchemaConfig
olcAttributeTypes: ( 1.3.6.1.4.1.24552.500.1.1.1.13 NAME 'sshPublicKey'
  DESC 'OpenSSH Public key'
  EQUALITY octetStringMatch
  SYNTAX 1.3.6.1.4.1.1466.115.121.1.40 )
olcObjectClasses: ( 1.3.6.1.4.1.24552.500.1.1.2.0 NAME 'ldapPublicKey' SUP top AUXILIARY
  DESC 'OpenSSH LPK objectclass'
  MUST uid
  MAY sshPublicKey )

dn: cn={5}inetorgperson,cn=schema,cn=config
changetype: modify
replace: olcObjectClasses
olcObjectClasses: ( 2.16.840.1.113730.3.2.2 NAME 'inetOrgPerson' DESC 'RF
 C2798: Internet Organizational Person' SUP organizationalPerson STRUCTURAL
 MAY ( audio $ businessCategory $ carLicense $ departmentNumber $ displayNam
 e $ employeeNumber $ employeeType $ givenName $ homePhone $ homePostalAddre
 ss $ initials $ jpegPhoto $ labeledURI $ mail $ manager $ mobile $ o $ page
 r $ photo $ roomNumber $ secretary $ uid $ userCertificate $ x500uniqueIden
 tifier $ preferredLanguage $ userSMIMECertificate $ userPKCS12 $ sshPublicK
 ey ) )

Isso funciona muito bem - eu sou capaz de modificar os usuários para adicionar seus detalhes de chave pública ao seu registro e, em seguida, ler os dados de outros clientes.

Os problemas aparecem quando tento fazer backup do banco de dados usando slapcat , embora:

5b044b38 olcObjectClasses: value #0 olcObjectClasses: AttributeType not found: "sshPublicKey"
5b044b38 config error processing cn={5}inetorgperson,cn=schema,cn=config: olcObjectClasses: AttributeType not found: "sshPublicKey"
slapcat: bad configuration file!

O que eu fiz de errado que slapcat não é capaz de ver a definição para sshPublicKey ?

    
por miken32 22.05.2018 / 18:58

1 resposta

4

Você não deveria ter modificado inetorgperson . Não havia necessidade de fazer isso. Qualquer número de AUXILIARY ObjectClasses pode coexistir (com um STRUCTURAL objectClass).

Seu slapd pode ficar bem se você reiniciá-lo.

    
por 22.05.2018 / 19:04

Tags