
Originariamente Scritto da
rtacconi
Io, per una intranet ho usato
RBAC. E` una sistema tipo le ACL ma piu` orientato alle risorse ed a quello che i ruoli possono fare sulle risorse.
Ho una tabella con i ruoli, una che collega gli utenti ai ruoli, una chiamata ACL che collega un po` tutto. Nella tabella ACL ho un capo con una relazione polimorfica, cioe` che puo` mappare piu` risorse. Per risorse intendo pagine, file ed altri oggetti. Nella ACL ci ho messo il ruolo, le risorse e il tipo di permesso, view, modify e publish (i permessi stanno nella loro tabella). La cosa piu' importante riguarda come collegare la ACL alle risorse:
tipo_risorsa - articolo, file etc.
risorsa_id - chiave primaria della risorsa
Nella risorsa, per esempio articolo, potete recuperare le ACL tipo_risorsa articolo con id 33. Verificate se l'utente fa parte di uno dei ruoli contenuti nelle ACL trovate e vedete questo ruolo se puo` leggere, scrivere, pubblicare, autorizzare...
E` molto potente ma puo` essere molto complessa da gestire, quindi e` molto importante fare una interfaccia semplice ed intuitiva.
Segnalibri