Ldapadd kullanıyorum ve depoya bir özellik türü eklemek istiyorum, böylece diğer girişler tarafından kullanılabilir.
Birkaç sorun yaşıyorum. İşte benim ldif dosyam.
dn: dc=myorg,dc=co,dc=uk
changetype: add
add: attributetypes
attributetype: ( 2.2.980.1.1 NAME ( 'ecdvisibility' 'ecdvis' ) DESC 'The visibility of the object' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE USAGE userApplications )
Sonunda boşluklar için satırları kontrol ettikten sonra, her şeyin yolunda gittiğini görüyorum:
dn: dc=myorg,dc=co,dc=uk$
changetype: add$
add: attributetypes$
attributetype: ( 2.2.980.1.1 NAME ( 'ecdvisibility' 'ecdvis' )$
DESC 'The visibility of the object'$
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15$
SINGLE-VALUE$
USAGE userApplications )$
Gördüğüm gibi aşağıdaki gibi gizemli bir hatadır:
ldap_add: Tanımsız öznitelik türü (17) ek bilgi: add: öznitelik türü undefined
Bu hatayı anlamıyorum, nitelik tipi tanımlanmadı, eklemeye çalışıyorum ! Ayrıca bu satırdan hemen önce şöyle der:
"dc = myorg, dc = co, dc = uk" yeni girişi eklendi
Neden bunu ekliyor, zaten var. Ayrıca ldapadd veya ldapmodify kullanmam gerekip gerekmediğinden de emin değilim.
Benim tipik komutum:
sudo ldapadd -D cn = admin, dc = myorg, dc = co, dc = ingiltere -w parola -v -f attributeType.ldif
Ben de hiçbir fark yaratmayacak gibi görünmesine rağmen, dosyanın sonunda boş bir satır olduğundan emin oldum.
Herhangi bir kullanıcı tarafından kullanılabilecek bir özellik eklemenin en iyi yolu nedir?
Güncelleştirme
Ayrıca aşağıdakileri de denedim:
dn: cn=schema
changetype: modify
add: attributeTypes
##
## The new attribute type
##
attributeTypes: ( ecdvisibility.oid NAME ( 'ecdvisibility' 'ecdvis' ) DESC 'The visibility of the object' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE USAGE userApplications )
Ama bu sefer bu hatayı alıyorum:
ldap_modify: Geçersiz sözdizimi (21) ek bilgi: attributeTypes: sözdizimi başına 0 değer geçersiz
Güncelleme 2:
Herhangi bir değişiklik yapmadan önce, openldap'ın arka planda ayarladığı görünen sistem şifresini güncellemek zorunda kaldım:
dn: olcDatabase={0}config,cn=config
changetype: modify
replace: olcRootPW
olcRootPW: password
Bu iyi çalıştı, bu yüzden özellikleri güncellemeye çalışıyorum.
1. deneme:
dn: cn=schema,cn=config
changetype: add
olcAttributeTypes: ( ecdvisibility.oid
NAME ( 'ecdvisibility' 'ecdvis' )
DESC 'The visibility of the object'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
SINGLE-VALUE
USAGE userApplications )
olcRootDN: cn=config
olcRootPW: password
#objectClass: top
ldap_add: Nesne sınıfı ihlali (65) ek bilgi: objectClass niteliği yok
Object sınıfında yorum yapmak bana aşağıdaki hatayı verdi:
ldap_add: Nesne sınıfı ihlali (65) ek bilgi: yapısal nesne sınıfı yok
Tamam, inetOrgPerson'ı deneyeceğim
ldap_add: Nesne sınıfı ihlali (65) ek bilgi: nesne sınıfı 'inetOrgPerson' 'sn' niteliğini gerektiriyor
Dur , bunu gerçekten yapmak istemiyorum, sadece ldap için kullanılabilen bir özellik türü eklemek istiyorum ve ne zaman ve gerekirse bir nesneye eklenebilirim. Bu noktada tek bir nesneyi veya bir girişi belirtmek istemiyorum. Mümkün mü? Öyleyse nasıl? Başka bir öneri gerçekten takdir.
@Grawity sayesinde, son durum şu şekildedir:
dn: cn=test,cn=schema,cn=config
changetype: add
olcAttributeTypes: ( 2.25.247072656268950430024439664556757516066
NAME ( 'ecdvisibility' 'ecdvis' )
DESC 'The visibility of the object'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
SINGLE-VALUE
USAGE userApplications )
objectClass: olcSchemaConfig
OID numarasını, herkese açık geçersiz bir numara kullandığım için benzersiz açık numaralardan birine değiştirdim. Öznitelik türü başarıyla eklendi ve başka bir yerde kullanılabilir.
1.3.6.1.4.1
arc) bir gün alırken başkasının menzilini kullanmaktan kaçınmak iyi bir uygulamadır .