Re: [OpenLDAP] cosa significa?

2010-05-21 Per discussione Mauro
2010/5/20 Luca Scamoni luca.scam...@gruppopa.it:
 Il 19/05/2010 16:24, Mauro ha scritto:

 2010/5/18 Mauro mrsan...@gmail.com:


 On 18 May 2010 14:08, Luca Scamoni luca.scam...@gruppopa.it wrote:


 Il 18/05/2010 13:52, Mauro ha scritto:

 2010/5/18 Luca Scamoni luca.scam...@gruppopa.it:


 Si ma quello che non capisco e':
 se per usare VirtualMailAccount e' richiesta anche inetOrgPerson
 altrimenti mi dice missing superior class perche' mi da errore.
 Perche' non me lo fa fare se lui stesso richiede inetOrgPerson.


 Allora:
 ldapmodify -M -D cn=admin,dc=miodominioi,dc=it -x -W -f virtual

 l'opzione -M abilita il manage DSAit control.
 Il file virtual e':
 dn: uid=xxx,ou=People,dc=miodominio,dc=it
 changetype: modify
 add: objectClass
 objectClass: VirtualMailAccount
 -
 add: objectClass
 objectClass: VirtualForward
 -
 add: vdHome
 vdHome: /var/vmail/xxx
 -
 add: mailbox
 mailbox: /var/vmail/xxx/Maildir
 -
 add: accountActive
 accountActive: TRUE
 -
 add: delete
 delete: FALSE
 -
 add: lastChange
 lastChange: 1274173200
 -
 add: forwardActive
 forwardActive: FALSE

 questa volta ho abilitato il manage DSAit con l'opzione -M ma:

 ldap_modify: Cannot modify object class (69)
   additional info: structural object class modification from
 'inetOrgPerson' to 'VirtualMailAccount' not allowed

 boh :-(



 ldapmodify -x -e manageDIT -D cn=admin,dc=miodominioi,dc=it -x -W -f virtual

 e funziona

e invece non funziona:
ldapmodify -x -e manageDIT -D cn=admin,dc=miodominio,dc=it -x -W -f virtual


modifying entry uid=xxx,ou=People,dc=miodominio,dc=it
ldap_modify: Cannot modify object class (69)
additional info: structural object class modification from
'inetOrgPerson' to 'VirtualMailAccount' not allowed

Credo che non mi resti altro da fare che cancellare tutti gli account
e riinserirli ex-novo con le objectClass aggiuntive.
Bella roba :-(
___
OpenLDAP mailing list
OpenLDAP@mail.sys-net.it
https://www.sys-net.it/mailman/listinfo/openldap


Re: [OpenLDAP] cosa significa?

2010-05-21 Per discussione Mirko ML
Il 21/05/2010 12:31, Mauro ha scritto:
[...]
 e invece non funziona:
 ldapmodify -x -e manageDIT -D cn=admin,dc=miodominio,dc=it -x -W -f virtual
 
 
 modifying entry uid=xxx,ou=People,dc=miodominio,dc=it
 ldap_modify: Cannot modify object class (69)
 additional info: structural object class modification from
 'inetOrgPerson' to 'VirtualMailAccount' not allowed
 
 Credo che non mi resti altro da fare che cancellare tutti gli account
 e riinserirli ex-novo con le objectClass aggiuntive.
 Bella roba :-(
direi che se necessiti di una mano dire semplicemente non funziona non
aiuta nessuno.
Se avessi dei log non sarebbe male..
Se poi vuoi inserire tutta la basedn da zero perchè ti viene più comodo
direi che non è colpa di OpenLDAP

-- 
Ciao
Mirko
___
OpenLDAP mailing list
OpenLDAP@mail.sys-net.it
https://www.sys-net.it/mailman/listinfo/openldap


Re: [OpenLDAP] cosa significa?

2010-05-21 Per discussione Luca Scamoni
Il 21/05/2010 12:31, Mauro ha scritto:
 2010/5/20 Luca Scamoni luca.scam...@gruppopa.it:
   
 Il 19/05/2010 16:24, Mauro ha scritto:

 2010/5/18 Mauro mrsan...@gmail.com:


 On 18 May 2010 14:08, Luca Scamoni luca.scam...@gruppopa.it wrote:


 Il 18/05/2010 13:52, Mauro ha scritto:

 2010/5/18 Luca Scamoni luca.scam...@gruppopa.it:


 Si ma quello che non capisco e':
 se per usare VirtualMailAccount e' richiesta anche inetOrgPerson
 altrimenti mi dice missing superior class perche' mi da errore.
 Perche' non me lo fa fare se lui stesso richiede inetOrgPerson.


 Allora:
 ldapmodify -M -D cn=admin,dc=miodominioi,dc=it -x -W -f virtual

 l'opzione -M abilita il manage DSAit control.
 Il file virtual e':
 dn: uid=xxx,ou=People,dc=miodominio,dc=it
 changetype: modify
 add: objectClass
 objectClass: VirtualMailAccount
 -
 add: objectClass
 objectClass: VirtualForward
 -
 add: vdHome
 vdHome: /var/vmail/xxx
 -
 add: mailbox
 mailbox: /var/vmail/xxx/Maildir
 -
 add: accountActive
 accountActive: TRUE
 -
 add: delete
 delete: FALSE
 -
 add: lastChange
 lastChange: 1274173200
 -
 add: forwardActive
 forwardActive: FALSE

 questa volta ho abilitato il manage DSAit con l'opzione -M ma:

 ldap_modify: Cannot modify object class (69)
  additional info: structural object class modification from
 'inetOrgPerson' to 'VirtualMailAccount' not allowed

 boh :-(



 ldapmodify -x -e manageDIT -D cn=admin,dc=miodominioi,dc=it -x -W -f virtual

 e funziona
 
 e invece non funziona:
 ldapmodify -x -e manageDIT -D cn=admin,dc=miodominio,dc=it -x -W -f virtual


 modifying entry uid=xxx,ou=People,dc=miodominio,dc=it
 ldap_modify: Cannot modify object class (69)
 additional info: structural object class modification from
 'inetOrgPerson' to 'VirtualMailAccount' not allowed

 Credo che non mi resti altro da fare che cancellare tutti gli account
 e riinserirli ex-novo con le objectClass aggiuntive.
 Bella roba :-(
   
A questo punto non so che dire. Io ho fatto la prova con openldap 2.4.17
(la più vecchia versione che ho) e funziona perfettamente se usi il
rootdn per fare l'operazione
se invece usi una utenza diversa dal rootdn devi mettere delle acl per
rendere manageable l'attributo structuralObjectClass ma questa è una
cosa normale




-- 

/Luca Scamoni
/
*Gruppo Partners Associates*
Tel. Milano +39 02 67380435* *- Udine +39 0432 689815 - Roma +39 06 54832300
Fax Milano +39 02 67386214 - Udine +39 0432 570120 - Roma +39 06 91659273
Cell. +39 348 0471710
Email: luca.scam...@gruppopa.it mailto:luca.scam...@gruppopa.it
Sito: _www.GruppoPA.it_ http://www.GruppoPA.it 


Prima di stampare, pensa all'ambiente ** Think about the environment
before printing

___
OpenLDAP mailing list
OpenLDAP@mail.sys-net.it
https://www.sys-net.it/mailman/listinfo/openldap


Re: [OpenLDAP] cosa significa?

2010-05-19 Per discussione Mauro
2010/5/18 Mauro mrsan...@gmail.com:
 On 18 May 2010 14:08, Luca Scamoni luca.scam...@gruppopa.it wrote:
 Il 18/05/2010 13:52, Mauro ha scritto:

 2010/5/18 Luca Scamoni luca.scam...@gruppopa.it:


 Si ma quello che non capisco e':
 se per usare VirtualMailAccount e' richiesta anche inetOrgPerson
 altrimenti mi dice missing superior class perche' mi da errore.
 Perche' non me lo fa fare se lui stesso richiede inetOrgPerson.



 ??


 Questo e' ldif:

 dn: uid=xxx,ou=People,dc=miodominio,dc=it
 gidNumber: 1004
 cn: xxx
 homeDirectory: /var/vmail/xxx
 employeeNumber: 111
 uid: mauro.test
 mail: x...@miodominio.it
 sn: xxx
 description: prova
 uidNumber: 1004
 objectClass: top
 objectClass: person
 objectClass: organizationalPerson
 objectClass: inetOrgPerson
 objectClass: posixAccount
 employeeType: prova

 Se tento di aggiungere la objectClass VirtualMailAccount mi dice:

 ldap_modify: Cannot modify object class (69)
       additional info: structural object class modification from
 'inetOrgPerson' to 'VirtualMailAccount' not allowed



 Mi sembra che ci sia una bella differenza tra il messaggio qui sopra e
 quello che hai scritto prima.
 Non vedo nessun missing superior class in questo errore...

 Nel senso che come ulteriore prova ho cercato di sostituire
 inetOrgPerson con VirtualMailAccount ed e' saltato fuori l'errore:
 missing superior class.
 Che trovo giusto poiche' nel file schema leggo:

 objectclass ( 1.3.6.1.4.1.22339.1.2.1 NAME 'VirtualMailAccount'
        SUP inetOrgPerson STRUCTURAL

continuo a sbagliare io? continuo a non capire?

___
OpenLDAP mailing list
OpenLDAP@mail.sys-net.it
https://www.sys-net.it/mailman/listinfo/openldap


Re: [OpenLDAP] cosa significa?

2010-05-18 Per discussione Mauro
2010/5/18 Luca Scamoni luca.scam...@gruppopa.it:
 Il 17/05/2010 20:37, Mauro ha scritto:

 2010/5/17 Luca Scamoni luca.scam...@gruppopa.it:


 Il 17/05/2010 14:03, Mauro ha scritto:

 2010/5/17 Luca Scamoni luca.scam...@gruppopa.it:


 Il 16/05/2010 21:02, Mauro ha scritto:

 2010/5/16 Mirko ML o...@klez.it:


 Il 15/05/2010 14:26, Mauro ha scritto:


 Ho pensato di utilizzare VirtualMailAccount solo per sfruttare
 l'attributo accountActive ma visto che mi comporta tutti questi
 problemi mi sa che mi faccio uno schema custom inserendo gli attributi
 che mi servono.


 Se secondo te la soluzione migliore è questa ben venga :)


 Beh non saprei che altro fare poiche' inetOrgPerson ha degli attributi
 che sto utilizzando, mentre non ha altri attributi, vedi
 accountActive, che mi servono e che ha VirtualMailAccount.


 E quindi non capisco che problema ci sia a modificare le entries aggiungendo
 VirtualMailAccount...



 Allora, a me serve, ad esempio l'attributo employeeNumber, che trovo
 in inetOrgPerson.
 Aggiungo inetOrgPerson ed e' ok.
 Poi mi serve anche l'attributo accountActive che trovo in
 VirtualMailAccount.
 Aggiungo VirtualMailAccount ed ottengo l'errore che avevo postato
 all'inizio di questo thread.
 Quindi o uso inetOrgPerson oppure VirtualMailAccount e in questo caso
 devo rinunciare ad utilizzare l'attributo employeeNumber oppure
 accountActive.



 NO
 il fatto che ti dia errore non vuol dire che devi usare uno O l'altro: vuol
 dire che devi fare l'operazione giusta.


 L'operazione giusta dovrebbe essere quella di aggiungere la
 objectClass VirtualMailAccount a tutte le altre gia' presenti
 valorizzando gli attributi che sono obbligatori.



 Dato che non dici come fai a fare questa operazione (ne' quale versione di
 OpenLDAP adoperi) posso solo supporre che tu stia usando un qualche inutile
 tool grafico di gestione ldap
 Utilizzando i tool da linea di comando l'operazione è banale


 Utilizzo gq, un tool grafico in ambiente linux, come server openLDAP
 utilizzo slapd versione 2.4.11.
 Quindi pensi che il problema derivi da dei capricci di gq.
 Ora provo ad aggiungere la objectClass VirtualMailAccount valorizzando
 gli attributi obbligatori con ldapmodify.



 L'operazione giusta è quella di aggiungere l'objectClass VirtualMailAccount.
 Tutte le altre sono ereditate e quindi non occorre specificarle
 GQ era un bel progetto. Peccato che non sia mai stato aggiornato. Detto
 questo, usalo per fare browsing. Per il resto del sano scripting è meglio.
 Anche perchè molte possibilità che ti danno i tool di openldap in GQ non
 sono implementate (controlli, feature estese, ecc.)
 Ti do un hint: man ldapsearch cerca manageDSAit. Non è indicato nella
 manpage di ldapmodify ma funziona anche lì

Scusami ma devo essere rintronato.
Io ho gia' inetOrgPerson, se provo a sostituire VirtualMailAccount con
inetOrgPerson mi dice che manca la classe superiore, appunto
inetOrgOPerson.
Lascio inetOrgPerson.
Se aggiungo VirtualMailAccount valorizzando gli attributi obbligatori, come qui:

dn: uid=mauro,ou=People,dc=miodominio,dc=it
changetype: modify
add: objectClass
objectClass: VirtualMailAccount
-
add: vdHome
vdHome: /var/vmail/mauro
-
add: mailbox
mailbox: /var/vmail/mauro/Maildir
-
add: accountActive
accountActive: TRUE
-
add: delete
delete: FALSE
-
add: lastChange
lastChange: 1274173200

e poi faccio un ldapmodify -D cn=admin,dc=miodominio,dc=it -x -W -f file
mi dice:
ldap_modify: Cannot modify object class (69)
additional info: structural object class modification from
'inetOrgPerson' to 'VirtualMailAccount' not allowed

Non so piu' che fare.
Insomma non posso usare VirtualMailAccount se non con l'estensione che
hai detto?

___
OpenLDAP mailing list
OpenLDAP@mail.sys-net.it
https://www.sys-net.it/mailman/listinfo/openldap


Re: [OpenLDAP] cosa significa?

2010-05-17 Per discussione Mauro
2010/5/17 Luca Scamoni luca.scam...@gruppopa.it:
 Il 16/05/2010 21:02, Mauro ha scritto:

 2010/5/16 Mirko ML o...@klez.it:


 Il 15/05/2010 14:26, Mauro ha scritto:


 Ho pensato di utilizzare VirtualMailAccount solo per sfruttare
 l'attributo accountActive ma visto che mi comporta tutti questi
 problemi mi sa che mi faccio uno schema custom inserendo gli attributi
 che mi servono.


 Se secondo te la soluzione migliore è questa ben venga :)


 Beh non saprei che altro fare poiche' inetOrgPerson ha degli attributi
 che sto utilizzando, mentre non ha altri attributi, vedi
 accountActive, che mi servono e che ha VirtualMailAccount.


 E quindi non capisco che problema ci sia a modificare le entries aggiungendo
 VirtualMailAccount...

Allora, a me serve, ad esempio l'attributo employeeNumber, che trovo
in inetOrgPerson.
Aggiungo inetOrgPerson ed e' ok.
Poi mi serve anche l'attributo accountActive che trovo in VirtualMailAccount.
Aggiungo VirtualMailAccount ed ottengo l'errore che avevo postato
all'inizio di questo thread.
Quindi o uso inetOrgPerson oppure VirtualMailAccount e in questo caso
devo rinunciare ad utilizzare l'attributo employeeNumber oppure
accountActive.

___
OpenLDAP mailing list
OpenLDAP@mail.sys-net.it
https://www.sys-net.it/mailman/listinfo/openldap


Re: [OpenLDAP] cosa significa?

2010-05-16 Per discussione Mirko ML
Il 15/05/2010 14:26, Mauro ha scritto:
 Ho pensato di utilizzare VirtualMailAccount solo per sfruttare
 l'attributo accountActive ma visto che mi comporta tutti questi
 problemi mi sa che mi faccio uno schema custom inserendo gli attributi
 che mi servono.

Se secondo te la soluzione migliore è questa ben venga :)
Se volessi approfondire il ragionamento segnalo 2 link:
http://www.faqs.org/rfcs/rfc3296.html
http://tinyurl.com/2dtggsx

-- 
Ciao
Mirko
___
OpenLDAP mailing list
OpenLDAP@mail.sys-net.it
https://www.sys-net.it/mailman/listinfo/openldap


Re: [OpenLDAP] cosa significa?

2010-05-16 Per discussione Mauro
2010/5/16 Mirko ML o...@klez.it:
 Il 15/05/2010 14:26, Mauro ha scritto:
 Ho pensato di utilizzare VirtualMailAccount solo per sfruttare
 l'attributo accountActive ma visto che mi comporta tutti questi
 problemi mi sa che mi faccio uno schema custom inserendo gli attributi
 che mi servono.

 Se secondo te la soluzione migliore è questa ben venga :)

Beh non saprei che altro fare poiche' inetOrgPerson ha degli attributi
che sto utilizzando, mentre non ha altri attributi, vedi
accountActive, che mi servono e che ha VirtualMailAccount.

___
OpenLDAP mailing list
OpenLDAP@mail.sys-net.it
https://www.sys-net.it/mailman/listinfo/openldap


Re: [OpenLDAP] cosa significa?

2010-05-14 Per discussione Mirko ML
Il 14/05/2010 12:44, Mauro ha scritto:
 Salve.
 Ho vari accounts registrati su openldap, le objectClasses sono:
 
 top
 person
 organizationalPerson
 inetOrgPerson
 
 alle quali ho aggiunto Vacation presa da phamm-vacation.schema.
 Tutto funziona perfettamente.
 Successivamente mi sono trovato nella necessita' di gestire un
 ulteriore attributo: accountActive che ho trovato nella objectClass
 VirtualMailAccount in phamm.schema.
 Ho provato ad aggiungere questa objectClass, valorizzato tutti gli
 attributi richiesti ma ottengo questo errore:
 
 entry failed schema check: structural object class modification from
 'inetOrgPerson' to 'VirtualMailAccount' not allowed
 
 Significa che non posso usare le objectClass inetOrgPerson e
 VirtualMailAccount assieme?

Puoi usarle senza alcun problema insieme.

Considera comunque che la dichiarazione della objectclass
VirtualMailAccount è la seguente:

objectclass ( 1.3.6.1.4.1.22339.1.2.1 NAME 'VirtualMailAccount'
SUP inetOrgPerson STRUCTURAL

che è stata pensata per derivare diversi attributi da Inetorgperson

quindi otterresti questo per un dn

dn:mail=john@example.tld,vd=example.tld,o=hosting,dc=example,dc=tld
objectClass: top
objectClass: VirtualMailAccount
objectClass: Vacation
objectClass: amavisAccount
objectClass: VirtualForward
mail: john@example.tld
etc etc

mentre la objectclass Vacation ha come gerarchia TOP ed è comunque AUXILIARY

HTH


-- 
Ciao
Mirko
___
OpenLDAP mailing list
OpenLDAP@mail.sys-net.it
https://www.sys-net.it/mailman/listinfo/openldap


Re: [OpenLDAP] cosa significa?

2010-05-14 Per discussione Mauro
2010/5/14 Luca Scamoni luca.scam...@gruppopa.it:
 Non so come stai cercando di aggiungere la nuova objectclass ma, se
 virtualmailaccount è  STRUCTURAL ed è nella stessa catena gerarchica di
 inetOrgPerson, potrebbe essere necessario utilizzare l'estensione
 manageDSAit per consentire la modifica
 I constraint applicati sulle recenti versioni di openldap infatti
 impediscono le modifiche che potrebbero portare a una situazione
 inconsistente

Perdona non ho capito.
Semplicemente aggiungo la objectClass virtualmailaccount all'elenco di
quelle che gia' ho.
Riporto un frammento del file .schema:

objectclass ( 1.3.6.1.4.1.22339.1.2.1 NAME 'VirtualMailAccount'
SUP inetOrgPerson STRUCTURAL
DESC 'Mail account objects'
MUST ( mail $ vdHome $ mailbox $ accountActive $ lastChange $ delete )
MAY ( quota $ otherTransport $ editAccounts $ creationDate $
createMaildir $ smtpAuth $ expireDate $ mailAutoreply $
bypassGreyListing) )

___
OpenLDAP mailing list
OpenLDAP@mail.sys-net.it
https://www.sys-net.it/mailman/listinfo/openldap


Re: [OpenLDAP] cosa significa?

2010-05-14 Per discussione Mauro
2010/5/14 Mirko ML o...@klez.it:
 Il 14/05/2010 12:44, Mauro ha scritto:
 Salve.
 Ho vari accounts registrati su openldap, le objectClasses sono:

 top
 person
 organizationalPerson
 inetOrgPerson

 alle quali ho aggiunto Vacation presa da phamm-vacation.schema.
 Tutto funziona perfettamente.
 Successivamente mi sono trovato nella necessita' di gestire un
 ulteriore attributo: accountActive che ho trovato nella objectClass
 VirtualMailAccount in phamm.schema.
 Ho provato ad aggiungere questa objectClass, valorizzato tutti gli
 attributi richiesti ma ottengo questo errore:

 entry failed schema check: structural object class modification from
 'inetOrgPerson' to 'VirtualMailAccount' not allowed

 Significa che non posso usare le objectClass inetOrgPerson e
 VirtualMailAccount assieme?

 Puoi usarle senza alcun problema insieme.

 Considera comunque che la dichiarazione della objectclass
 VirtualMailAccount è la seguente:

 objectclass ( 1.3.6.1.4.1.22339.1.2.1 NAME 'VirtualMailAccount'
        SUP inetOrgPerson STRUCTURAL

 che è stata pensata per derivare diversi attributi da Inetorgperson

Appunto, allora perche' quell'errore?
Io interpreto SUP inetOrgPerson come classe padre, che quindi deve
esserci per poter utilizzare VirtualMailAccount.
Sbaglio?

___
OpenLDAP mailing list
OpenLDAP@mail.sys-net.it
https://www.sys-net.it/mailman/listinfo/openldap


Re: [OpenLDAP] cosa significa?

2010-05-14 Per discussione Mauro
2010/5/14 Mirko ML o...@klez.it:
 Il 14/05/2010 13:32, Mauro ha scritto:
 [...]
 Appunto, allora perche' quell'errore?
 Io interpreto SUP inetOrgPerson come classe padre, che quindi deve
 esserci per poter utilizzare VirtualMailAccount.
 Sbaglio?
 nella dichiarazione del dn non serve che metti come objectclass
 Inetorgperson, ma solo VirtualMailAccount
 un ldapsearch deve tornarti una cosa simile a quella dell'esempio della
 mail precedente e che trovi anche negli esempi di phamm

Ma la inetOrgPerson contiene degli attributi che utilizzo e che
VirtualMailAccount non ha.
___
OpenLDAP mailing list
OpenLDAP@mail.sys-net.it
https://www.sys-net.it/mailman/listinfo/openldap


Re: [OpenLDAP] cosa significa?

2010-05-14 Per discussione Luca Scamoni
Il 14/05/2010 13:39, Mirko ML ha scritto:
 Il 14/05/2010 13:32, Mauro ha scritto:
 [...]
   
 Appunto, allora perche' quell'errore?
 Io interpreto SUP inetOrgPerson come classe padre, che quindi deve
 esserci per poter utilizzare VirtualMailAccount.
 Sbaglio?
 
 nella dichiarazione del dn non serve che metti come objectclass
 Inetorgperson, ma solo VirtualMailAccount
 un ldapsearch deve tornarti una cosa simile a quella dell'esempio della
 mail precedente e che trovi anche negli esempi di phamm

   
L'errore non nasce dalla definizione dell'objectclass nello schema ma
dal suo uso
Nello schema posso mettere quante objectclass strutturali voglio ma per
il directory importano solo quelle che effettivamente adopero
Qui il problema è che nel directory esistono già degli oggetti con
objectclass strutturale inetOrgPerson a cui si vuole aggiungere una
nuova objectclass strutturale da essa derivata.
Il problema non ce l'hai con gli oggeti creati ex-novo ma con quelli
esistenti che vai a modificare. In questo caso l'operazione di
ldapmodify fallisce perchè si cerca di modificare l'attributo
structuralObjectClass e questo NON è permesso se non utilizzando
l'estensione manageDSAit


-- 

/Luca Scamoni
/
*Gruppo Partners Associates*
Tel. Milano +39 02 67380435* *- Udine +39 0432 689815 - Roma +39 06 54832300
Fax Milano +39 02 67386214 - Udine +39 0432 570120 - Roma +39 06 91659273
Cell. +39 348 0471710
Email: luca.scam...@gruppopa.it mailto:luca.scam...@gruppopa.it
Sito: _www.GruppoPA.it_ http://www.GruppoPA.it 


Prima di stampare, pensa all'ambiente ** Think about the environment
before printing

___
OpenLDAP mailing list
OpenLDAP@mail.sys-net.it
https://www.sys-net.it/mailman/listinfo/openldap


Re: [OpenLDAP] cosa significa?

2010-05-14 Per discussione Mauro
2010/5/14 Luca Scamoni luca.scam...@gruppopa.it:
 Il 14/05/2010 13:39, Mirko ML ha scritto:

 Il 14/05/2010 13:32, Mauro ha scritto:
 [...]


 Appunto, allora perche' quell'errore?
 Io interpreto SUP inetOrgPerson come classe padre, che quindi deve
 esserci per poter utilizzare VirtualMailAccount.
 Sbaglio?


 nella dichiarazione del dn non serve che metti come objectclass
 Inetorgperson, ma solo VirtualMailAccount
 un ldapsearch deve tornarti una cosa simile a quella dell'esempio della
 mail precedente e che trovi anche negli esempi di phamm



 L'errore non nasce dalla definizione dell'objectclass nello schema ma dal
 suo uso
 Nello schema posso mettere quante objectclass strutturali voglio ma per il
 directory importano solo quelle che effettivamente adopero
 Qui il problema è che nel directory esistono già degli oggetti con
 objectclass strutturale inetOrgPerson a cui si vuole aggiungere una nuova
 objectclass strutturale da essa derivata.
 Il problema non ce l'hai con gli oggeti creati ex-novo ma con quelli
 esistenti che vai a modificare. In questo caso l'operazione di ldapmodify
 fallisce perchè si cerca di modificare l'attributo structuralObjectClass e
 questo NON è permesso se non utilizzando l'estensione manageDSAit

Puoi parlare piu' terra a terra?
Le due objectClass le posso utilizzare assieme oppure no? Senza estensioni.
Noto che entrambe definiscono l'attributo mail, che da me risulta valorizzato.
E' questo il problema?
Perdona la mia ignoranza.

___
OpenLDAP mailing list
OpenLDAP@mail.sys-net.it
https://www.sys-net.it/mailman/listinfo/openldap


Re: [OpenLDAP] cosa significa?

2010-05-14 Per discussione Luca Scamoni
Il 14/05/2010 14:16, Mauro ha scritto:
 2010/5/14 Luca Scamoni luca.scam...@gruppopa.it:
   
 Il 14/05/2010 13:39, Mirko ML ha scritto:

 Il 14/05/2010 13:32, Mauro ha scritto:
 [...]


 Appunto, allora perche' quell'errore?
 Io interpreto SUP inetOrgPerson come classe padre, che quindi deve
 esserci per poter utilizzare VirtualMailAccount.
 Sbaglio?


 nella dichiarazione del dn non serve che metti come objectclass
 Inetorgperson, ma solo VirtualMailAccount
 un ldapsearch deve tornarti una cosa simile a quella dell'esempio della
 mail precedente e che trovi anche negli esempi di phamm



 L'errore non nasce dalla definizione dell'objectclass nello schema ma dal
 suo uso
 Nello schema posso mettere quante objectclass strutturali voglio ma per il
 directory importano solo quelle che effettivamente adopero
 Qui il problema è che nel directory esistono già degli oggetti con
 objectclass strutturale inetOrgPerson a cui si vuole aggiungere una nuova
 objectclass strutturale da essa derivata.
 Il problema non ce l'hai con gli oggeti creati ex-novo ma con quelli
 esistenti che vai a modificare. In questo caso l'operazione di ldapmodify
 fallisce perchè si cerca di modificare l'attributo structuralObjectClass e
 questo NON è permesso se non utilizzando l'estensione manageDSAit
 
 Puoi parlare piu' terra a terra?
 Le due objectClass le posso utilizzare assieme oppure no? Senza estensioni.
 Noto che entrambe definiscono l'attributo mail, che da me risulta valorizzato.
 E' questo il problema?
 Perdona la mia ignoranza.

   
Confesso che più terra terra di così ho dei problemi...
Dunque...
nella definizione degli oggetti occorre UNA e UNA SOLA objectclass
strutturale e un qualsivoglia numero di objectclass ausiliarie.
Per la proprietà di ereditarietà un oggetto definito da una objectclass
strutturale eredita tutte le caratteristiche delle objectclass padre.
Ricordate che una objectclass strutturale derivata da un'altra può
solo aumentare la objectclass padre.
Virtualmailaccount è di per sè sufficiente a definire un oggetto perchè
in realtà porta con se tutta la definizione dei suoi genitori.
Se tu crei un oggetto nuovo e dici che la sua objectclass è
virtualmailaccount non ci sono problemi.
Se tu cerchi di modificare un oggetto esistente aggiungendo
l'objectclass virtualmailaccount il DSA deve intervenire modificando
l'attributo operazionale structuralobjectclass e questo NON è permesso,
normalmente, per motivi di sicurezza. Per fargli accettare la modifica
DEVI aggiungere all'operazione di ldapmodify l'estensione manageDSAit.
 

-- 

/Luca Scamoni
/
*Gruppo Partners Associates*
Tel. Milano +39 02 67380435* *- Udine +39 0432 689815 - Roma +39 06 54832300
Fax Milano +39 02 67386214 - Udine +39 0432 570120 - Roma +39 06 91659273
Cell. +39 348 0471710
Email: luca.scam...@gruppopa.it mailto:luca.scam...@gruppopa.it
Sito: _www.GruppoPA.it_ http://www.GruppoPA.it 


Prima di stampare, pensa all'ambiente ** Think about the environment
before printing

___
OpenLDAP mailing list
OpenLDAP@mail.sys-net.it
https://www.sys-net.it/mailman/listinfo/openldap


Re: [OpenLDAP] cosa significa?

2010-05-14 Per discussione simo
On Fri, 2010-05-14 at 14:16 +0200, Mauro wrote:
 
 Puoi parlare piu' terra a terra?
 Le due objectClass le posso utilizzare assieme oppure no? Senza
 estensioni.
 Noto che entrambe definiscono l'attributo mail, che da me risulta
 valorizzato.
 E' questo il problema?
 Perdona la mia ignoranza. 

Siccome una deriva dall'altra si possono usare sullo stesso oggetto
(visto che una *implica* l'altra), ma solo su oggetti nuovi.

Normalmente openLdap non permette di aggiungere classi strutturali ad
oggetti esistenti, indipendentemente dal fatto che siano compatibili o
meno. Per cui per modificare gli oggetti esistenti devi usare il
controllo manageDSAit che rilassa questa restrizione e ti permette di
aggiungere la classe strutturale.

Simo.

___
OpenLDAP mailing list
OpenLDAP@mail.sys-net.it
https://www.sys-net.it/mailman/listinfo/openldap