[genropy] Re: Utilizzo tabella Group, oppure configurare accessi differenziati alla tabella

  • From: Giovanni Porcari <giovanni.porcari@xxxxxxxxx>
  • To: genropy@xxxxxxxxxxxxx
  • Date: Tue, 19 Dec 2017 19:11:05 +0100



Il giorno 19 dic 2017, alle ore 16:39, Silvano Valleferro 
<s.valleferro@xxxxxxxxxxx> ha scritto:

Ciao a tutti,

Dovrei permettere di accedere in edit ad una tabella solo all'amministratore 
e non agli user (in questo caso solo in lettura).

Caro Silvano
Da parecchi mesi ormai genropy consente una completa granularità nella gestione 
dei permessi di accesso. 

Per questo vengono inserite nella tabella user_configuration una serie di 
rules. 

Ogni rule può specificare uno o più dei seguenti campi ‘guida’:

1) package
2) table
3) gruppo di utenti
4) utente

Ogni regola poi definisce il comportamento ovvero ‘vietata’, ‘sola lettura’, 
‘lettura e scrittura’ , ‘cancellazione’. 

Le regole hanno un ‘peso’ diverso a seconda della presenza o meno dei campi 
guida. 
Una regola senza nessun campo guida, nel caso venisse inserita’ andrebbe letta 
cosí :
“Per tutti gli utenti e tutti i gruppi, per ogni package e per ogni tabella ...”
Questa regola è debolissima e viene sovrascritta da qualsiasi altra regola. 

Le regole più forti sono quelle dove assegni si l’utente che la tabella.

Ad esempio:
“Luigi rossi nella tabella fornitori...”

Regole intermedie possono assegnare varie combinazioni, ad esempio utente e 
package (mario bianchi per tutte le tabelle del package erpy_coge) oppure 
gruppo e tabella ( es. utenti gruppo magazzinieri nella tabella spedizioni) 
oppure ancora gruppo e package ( utenti gruppo venditori in ogni tabella del 
package crm). 

Non è molto diverso che configurare un firewall e in effetti sono regole per 
fare una barriera a difesa dei dati ;). 

Tutte le volte che stabilisci regole che specifichino la tabella, puoi anche 
dare permessi diversi au vari campi. 

Ad esempio : tutti gli utenti sulla tabella retribuzioni non possono vedere i 
campi x e y e non possono modificare i campi m e q. 
E poi “gli utenti del gruppo amministrazione nella tabella retribuzioni possono 
modificare i campi m e q”. 
E ancora “l’utente Gino Boss nella tanella retribuzioni può vedere i campi x e 
y. 

Le 3 regole fanno si che nella tanella retribuzione gli utenti normali non 
vedano x e y e no possano modificare m e q; invece gli amministratori possono 
modificare m e q ma non vedono x e y. Il capo (Gino Boss) può vedere i campi 
segreti ma siccome è stupido comunque non può modificarr x e y. 

Spero che l’esempio ti abbia fatto capire come usarlo. Ci vuole un po’ di 
pazienza ma puoi davvero fare tutto. 

Una volta configurato il tutto, genropy provvede a gestire in modo automatico i 
bottoni di inserimento e cancellazione e ad impedire le modifiche a chi non ha 
i permessi. 

Se una tabella è vietata è esclusa dal menu, se un campo è vietato è escludo 
dalle view e dalle form. Se un campo è di sola lettura per un certo utente o 
gruppo, nrll form il campo risulterà visibile ma non modificabile. 

Spero ti sia tutto chiaro. Semmai chiedi pure qui oppure ci sentiamo con TV. 

Pensavo di provare ad utilizzare la tabella group.
Ma perchè questa venga utilizzata è necessario configurare in qualche modo il 
model della tabella?
Ho visto che esiste il metodo group e che in alcuni casi è stato utilizzato 
come 

,group='_'

Qual'è il significato di questa istruzione?

Questa sintassi non c’entra con i gruppi di utenti. Serve invrce a raggruppare 
i campi in famiglie logiche (dati anagrafici, dati trasporto, e via dicendo) il 
tutto per fare gli slberi dei campi sia per le ricerche che per le 
configurazioni di viste o ancora per i mail/print template. 

Riciao

G


Può essere utilizzata anche sui singoli campi?

Oppure, per assegnare direttamente al model i permessi di sola lettura agli 
user cosa dovrei utilizzare ?

Grazie

Silvano Valleferro


Other related posts: