Hata , yeni girişinizi nereye koyacağınızı bilmediği no global superior knowledge
anlamına gelir slapd
. Bu genellikle uygun bir veritabanı tanımlamadığınız anlamına gelir. Daha yeni sistemlerle ( cn=config
yerine kullananları slapd.conf
), genellikle yeni bir veritabanı ekler veya mevcut bir veritabanı girişini ldapadd
veya tuşlarını kullanarak değiştirirsiniz ldapmodify
. Örneğin, Fedora 17 sistemimde varsayılan yükleme, barındırma için dc=my-domain,dc=com
şöyle bir veritabanı kurar :
dn: olcDatabase={2}hdb
objectClass: olcDatabaseConfig
objectClass: olcHdbConfig
olcDatabase: {2}hdb
olcDbDirectory: /var/lib/ldap
olcDbIndex: objectClass eq,pres
olcDbIndex: ou,cn,mail,surname,givenname eq,pres,sub
structuralObjectClass: olcHdbConfig
creatorsName: cn=config
olcSuffix: dc=my-domain,dc=com
olcRootDN: cn=Manager,dc=my-domain,dc=com
Kuruluşunuzu ( o=myorganization, c=fr
) barındırmak için aşağıdaki LDIF dosyasını oluşturmam gerekir:
dn: olcDatabase={2}hdb,cn=config
changetype: modify
replace: olcSuffix
olcSuffix: o=myorganization, c=fr
-
replace: olcRootDN
olcRootDN: cn=Manager,o=myorganization,c=fr
-
replace: olcAccess
olcAccess: {0}to *
by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" write
by dn.base="cn=Manager,o=myorganization,c=fr" write
by * none
Ve sonra bu gibi değişiklikleri yüklerdim:
ldapmodify -Y EXTERNAL -H ldapi:/// -f mychanges.ldif
Bu olcAccess
, yapılandırmada zaten bulunan aşağıdaki satırlar nedeniyle çalışır :
dn: olcDatabase={0}config,cn=config
objectClass: olcDatabaseConfig
olcDatabase: {0}config
olcAccess: {0}to *
by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" manage
by * none
Bu , soket üzerinden root
temas ederek ağaca şifresiz erişim sağlar .slapd
ldapi:///
cn=config
Daha sonra üst düzey girişimi yüklerdim:
dn: o=myorganization, c=fr
objectclass: organization
o: myorganization
Koşarak:
ldapadd -Y EXTERNAL -H ldapi:/// -f myobject.ldif
Bu veritabanına benzer bir ACL eklediğim için çalışır. c=fr
Veritabanı tutmak için tanımlandığından, buradan başlamak zorunda olmadığımı unutmayıno=myorganization,c=fr