In Share di default, ogni utente autenticato può creare nuovi Site. E’ possibile restringere i privilegi per la creazione di Site a un Gruppo di utenti dedicato. Ecco come fare su Alfresco Community 4.2.f.
1. Accedere a Share come amminstratore e creare un nuovo gruppo, per esempio SITE_CREATORS
2. Cliccare su Repository e selezionare l’opzione Gestisci permessi per la cartella Siti
3. Cliccare su Aggiungi utente/gruppo e aggiungere il nuovo gruppo creato SITE_CREATORS con ruolo Contributor
4. Stop Alfresco
5. Modificare come segue il bean NodeService_security nel file webapps/alfresco/WEB-INF/classes/alfresco/public-services-security-context.xml
org.alfresco.service.cmr.site.SiteService.createSite=ACL_METHOD.GROUP_SITE_CREATORS
6. Start Alfresco
7. Accedere a Share come amminstratore e aggiungere gli utenti al gruppo SITE_CREATORS
Ciao,
innanzitutto complimenti per i contenuti anche se di nicchia. Volevo chiederti se questo post può essere valido anche per Alfresco 5.1.
Grazie mille.
Ciao Michele,
grazie per il commento.
La prima cosa che mi viene da dirti è “fai una prova”.
Sembra che il bean SiteService_security del security-context non sia cambiato nella versione 5.1. Quindi il tip dovrebbe funzionare. L’unica accortezza è che l’xml si trova nel JAR alfresco-repository-5.1.g.jar. Quindi dovresti aprirlo, modificare l’xml e poi ricrearlo nuovamente.
Giuseppe
Ciao Giuseppe,
ho l’installazione di ALfresco community 5.0.d ed ho creato il file public-services-security-context.xml con la modifica che hai scritto sopra e funziona tutto alla perfezione.
Ho però un’altra domanda: ho visto che nel file c’é anche la possibilità di mostrare i membri del sito “….site.listmembers” ad un gruppo specifico.
di default qualsiasi utente membro del sito può sapere tutti gli altri membri del sito, invece io vorei che solamente i manager del sito e gli amministratori di alfresco vedano i membri dei vari siti.
per gli amministratori ho trovato come fare : ACL_METHOD.ROLE_ADMINISTRATOR …
ma com’é il ruolo dei manager del sito? ACL_METHOD.ROLE_SITE_MANAGER ????
Ho provato ma nn funziona…… e nn trovo nulla sulle guide che mi dica quale sia la dicitura corretta per dire i manager del sito stesso…..
Grazie e complimenti per il tuo lavoro!
Roberto
Ciao Roberto,
ROLE_ADMINISTRATOR è un internal role preconfigurato di alfresco:
http://docs.alfresco.com/5.1/concepts/secur-DynAuthRoles.html
I manager di un sito fanno parte invece di un gruppo che per default è costruito da alfresco nella forma:
GROUP_site_nomeDelTuoSito_SiteManager
Da node browser li trovi in sys:system > sys:authorities
Qui altri dettagli:
http://docs.alfresco.com/5.1/concepts/secur-methodlevel-define.html