Introduzione
Una delle pecche di Joomla 1.5 è la difficoltà di gestire in maniera avanzata gli utenti. Solo i Joomla 1.6 troverà spazio tale funzionalità, nel frattempo se si ha l'esigenza di gestire gli utenti, si può optare per l'integrazione all'interno del CMS del componente NoixACL. Il plugin permette la creazione e la gestione semplificata degli utenti e delle loro azioni, ai quali sarà possibile applicare politiche di gestione, configurazione ed utilizzo dei plugin, moduli, delle varie parti del sito, della pubblicazione e gestione degli articoli ecc. NoixACL, sviluppato da NOIX, è distribuito con licenza GPL.
Installazione
Il plugin è composto da tre parti fondamentali, per poterle integrare all'interno di Joomla, occorrerà reperire nella relativa sezione del sito Joomlacode tre file zip, nello specifico scaricheremo:
- com_noixacl2.0.5beta.zip
- plg_system_noixACL.2.0.9.zip
- plg_user_noixacl.zip
Terminato il download, potremo procedere con l'installazione, tale processo è del tutto simile ad un qualsiasi componente Joomla, vale a dire, posizionandoci all'interno della sezione "Gestione estensioni", raggiungibile tramite il menù "Estensioni", andremo a caricare i tre file utilizzando l'opportuna form.
Prima di avvalersi delle potenzialità del componente, occorrerà attivare all'interno di "Gestione plugin" i componenti "System – noixACL" e "User – noixACL", vale la pena sottolineare, che se si deciderà di disinstallare il nostro componente, oppure di disattivarlo temporaneamente, il CMS Joomla continuerà a funzionare correttamente, questa opzione è resa possibile dal fatto che gli sviluppatori hanno implementato i moduli in maniera tale che si installino al disopra del core di Joomla e quindi non vadano a "sporcarlo".
Access Control
Eseguite tutte le operazioni preliminari, usufruiremo delle varie funzionalità messeci a disposizione dal pacchetto, semplicemente selezionando la voce "Access Control" contenuta nel menù "Componenti" di Joomla. All'interno di tale voce menù, troviamo altre quattro sottovoci, per la precisione: "Manage Groups", "Manage Users", Adapters ed About, naturalmente quest'ultima voce non necessita di chiarimenti, mentre è sicuramente più interessante analizzare le altre tre voci.
Manage Groups
La sezione "Manage Groups", è utilizzata principalmente per la gestione dei gruppi degli utenti, in essa infatti potremo creare, modifica e cancellare i vari profili degli utenti, assegnare e revocare eventualmente i permessi sia lato backend che frontend. Le funzionalità possono essere associate agli articoli, alle sezioni, alle categorie, ai vari componenti installati ecc.
A scopo didattico, supponiamo che all'interno del nostro CMS, siano presenti due sezioni: sezione1 e sezione2, all'interno di sezione1 troviamo categoria1, e supponiamo sempre per semplicità, che solo agli utenti amministratori sia data la possibilità di sospendere la pubblicazione degli articoli contenuti in categoria1, all'interno del nostro sistema quindi avremo sicuramente un utente amministratore e vari utenti di livello manager, ai quali non sarà data la facoltà di modificare la visualizzazione di un articolo, al contrario potranno scrivere nuovi articoli, editarli, salvarli, cancellarli ecc. Per implementare tale politica, creeremo un gruppo "Gestione", per far ciò selezioneremo il tasto nuovo contenuto all'interno del sezione "Manage Groups".
Nella corrispondente finestra, che si aprirà indicheremo, il nome del gruppo (nel nostro caso Gestione) e lo assoceremo al "Parent group" Manager, ad operazione conclusa potremo cliccare sul tasto salva per confermare i parametri immessi.
Il riscontro dell'avvenuta creazione del nuovo gruppo ci verrà data dalla presenza di quest'ultimo nell'elenco generale dei gruppi.
Assegnazione dei permessi al gruppo
L'assegnazione dei vari permessi ai gruppi è estremamente semplice, dalla finestra "Manage Group" cliccando su un qualsiasi gruppo tra i selezionabili, si avrà la possibilità di modificarne le operazioni consentite, nel nostro caso cliccando sul gruppo Gestione ci verrà mostrato qualcosa di simile a quello mostrato in figura.
Avendo come obiettivi quello di limitare le azioni sulla categoria1, all'interno del Backend di Joomla, selezioneremo nella casella "Sezione" la voce sezione1, la quale ricordiamo contiene la categoria1, ed una volta che verrà visualizzato l'elenco delle categoria, cliccheremo sulla voce categoria1, così facendo avremo la possibilità di editare i vari permessi.
Non resta altro che selezionare tutte le azioni permesse agli utenti associati a questo gruppo, tralasciando quindi le voci Pubblica e Sospendi. Conclusa la fase di impostazione dei permessi occorrerà ancora una volta confermare il tutto cliccando sul tasto salva.
Da questo momento in poi, agli utenti appartenenti a tale gruppo non sarà più consentito sospendere o ripubblicare un articolo contenuto nella categoria1, se dovessero provarci riceveranno un messaggio "You dont have permission to access".
Manage Users
La funzionalità "Manage Users" è un semplice collegamento alla sezione "Gestione utenti" di Joomla che conosciamo bene e la cui descrizione esula da quest'articolo, vale comunque la pena ricordare, che tramite tale funzionalità, si potranno aggiungere, rimuovere e modificare le proprietà degli utenti.
Adapters
Noix acl, fornisce la possibilità di caricare degli adattatori ai vari moduli e componenti per migliorare l'integrazione l'utilizzo di noix acl.
Conclusioni
L'esempio presentato in quest'articolo è molto semplice e forse non rende l'idea delle potenzialità di tale componente, ma naturalmente l'obiettivo dell'articolo era quello di effettuare una panoramica sulle funzionalità messe a disposizione dal componente, starà al lettore cercare di elaborare strategie di gestione più avanzate e adatte ai propri scopi.