2011-08-31 15 views
6

In un sito Plone esiste un'autorizzazione denominata "accesso al contenuto del portale inattivo". Per impostazione predefinita, questo è concesso ai ruoli "Manager" e "Proprietario".Plone: ​​Aggiungi autorizzazione al ruolo

Desidero concedere questa autorizzazione al ruolo "Editor", e so che posso solo utilizzare la casella di controllo corrispondente nella scheda "Sicurezza" nella ZMI, ma mi piacerebbe farlo a livello di programmazione in alcuni sorta di script di installazione. Come potrei farlo?

risposta

11

è necessario creare un nuovo prodotto e aggiungere un passaggio GenericSetup chiamato "rolemap.xml" con questo:

<?xml version="1.0"?> 
<rolemap> 
    <permissions> 
    <permission name="Access inactive portal content" acquire="False"> 
     <role name="Editor" /> 
    </permission> 
    </permissions> 
</rolemap> 

Maggiori informazioni:

Ciao, Giacomo

+0

Bello, grazie! Ma potrebbe essere che la rolemap non viene rivalutata al riavvio? Ho appena aggiunto il tuo codice a una rolemap esistente e l'autorizzazione sembra non cambiare dopo il riavvio dell'istanza plone. –

+0

Capito ... Devo reimportare la mappa dei permessi usando lo strumento di configurazione. –

+0

Esattamente ... Genericsetup viene automaticamente valutato solo durante l'installazione del componente aggiuntivo. Puoi forzare la valutazione reinstallando l'add-on o manualmente, come hai detto, usando lo strumento portal_setup. Ricordarsi di contrassegnare la domanda come risposta. –