Puncte:0

Eroare de suprapunere a membrului OpenLDAP: memberof_value_modify err=32

drapel cn

Am activat rafinarea și suprapunerea membrului cu OpenLDAP 2.4.57, dar când creez un groupOfNames primesc un memberof_value_modify .. eșuat err=32 eroare. De asemenea, am activat syncprov cu o rezervă. ce fac greșit?

adăugare de grup

$ ldapadd -W -x -D cn=admin,dc=domeniul meu,dc=tld << EOF
dn: cn=grupul meu,ou=grupuri,dc=domeniul meu,dc=tld
objectClass: top
objectClass: groupOfNames
cn: grupul meu
membru: cn=myüser,ou=membri,dc=mydomain,dc=tld
EOF

jurnalul de erori

slapd: conn=132979 op=1: memberof_value_modify DN="cn=myüser,ou=members,dc=mydomain,dc=tld" add memberOf="cn=mygroup,ou=groups,dc=myüser,dc=tld" a eșuat err=32
slapd: <= bdb_equality_candidates: (memberOf) nu este indexat

configurație

$ sudo ldapsearch -Y EXTERNAL -H ldapi:/// -b cn=modul{0},cn=config
dn: cn=modul{0},cn=config
objectClass: olcModuleList
cn: modul{0}
olcModulePath: /usr/lib/ldap
olcModuleLoad: {0}back_hdb
olcModuleLoad: {1}syncprov
olcModuleLoad: {2}membru al
olcModuleLoad: {3}refint

$ sudo ldapsearch -Y EXTERNAL -H ldapi:/// -b olcOverlay={0}membru al,olcDatabase={1}hdb,cn=config
dn: olcOverlay={0}membru al,olcDatabase={1}hdb,cn=config
objectClass: olcConfig
objectClass: olcMemberOf
objectClass: olcOverlayConfig
objectClass: top
olcOverlay: membru al
olcMemberOfDangling: ignora
olcMemberOfRefInt: TRUE
olcMemberOfGroupOC: groupOfNames
olcMemberOfMemberAD: membru
olcMemberOfMemberOfAD:: bWVtYmVyT2Yg

$ sudo ldapsearch -Y EXTERNAL -H ldapi:/// -b olcOverlay={2}refint,olcDatabase={1}hdb,cn=config
dn: olcOverlay={2}refint,olcDatabase={1}hdb,cn=config
objectClass: olcConfig
objectClass: olcOverlayConfig
objectClass: olcRefintConfig
objectClass: top
olcOverlay: {2}refint
olcRefintAttribute: membru al proprietarului managerului de membri
Puncte:0
drapel cn

Eroare 32 înseamnă nici un astfel de obiect

Dn-ul nodului meu a fost codificat în base64 deoarece conținea un accent. Cu un alt obiect cu un DN clar, totul funcționează bine.

$ ldapsearch -W -x -D cn=admin,dc=mydomain,dc=tld -b ou=membri,dc=mydomain,dc=tld sn=Doe
dn:: Y249bXn8c2VyLG91PW1lbWJlcnMsZGM9bXlkb21haW4sZGM9dGxk
objectClass: top
objectClass: persoană
objectClass: inetOrgPerso
sn: Doe
Nume dat: John
uid: john.doe

Este comportamentul definit în RFC2849 spune:

  4) Orice dn sau rdn care conține alte caractere decât acelea
      definit ca „SAFE-UTF8-CHAR”, sau începe cu un alt caracter
      decât cele definite ca „SAFE-INIT-UTF8-CHAR”, mai sus, TREBUIE să fie
      codificat în bază-64. Alte valori POT fi codificate în bază 64. Orice
      valoare care conține alte caractere decât cele definite ca
      „SAFE-CHAR”, sau începe cu un alt caracter decât acelea
      definit ca „SAFE-INIT-CHAR”, mai sus, TREBUIE să fie codificat în bază 64.
      Alte valori POT fi codificate în bază 64.

Totul funcționează bine cu versiunea codificată a dn:

$ ldapadd -W -x -D cn=admin,dc=domeniul meu,dc=tld << EOF
dn: cn=grupul meu,ou=grupuri,dc=domeniul meu,dc=tld
objectClass: top
objectClass: groupOfNames
cn: grupul meu
membru:: Y249bXn8c2VyLG91PW1lbWJlcnMsZGM9bXlkb21haW4sZGM9dGxk
EOF

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.