Cos’è l’ RBAC?

RBAC-Scheme-2000x1200
RBAC-Scheme-2000x1200

Si tratta del Role-based access control, cioè – in italiano – del Controllo degli accessi basato sui ruoli. Permette di costruire degli accessi ristretti per utenti autorizzati.

L’ RBAC ha tre regole fondamentali:

  • Assegnazione dei ruoli. Un soggetto può eseguire una transazione solo se lo stesso ha selezionato o è stato assegnato ad un ruolo
  • Autorizzazione dei ruoli.  Un ruolo attivo per un soggetto deve essere stato autorizzato per lo stesso. Insieme alla regola precedente questa regola garantisce che gli utenti possano avere esclusivamente ruoli ai quali sono stati autorizzati
  • Autorizzazione alla transazione. Un soggetto può eseguire una transazione solo se la transazione è autorizzata per il ruolo attivo del soggetto stesso. Insieme alle due regole precedenti, questa regola garantisce che l’utente possa eseguire solo transazioni alle quali è stato autorizzato

Si possono applicare anche vincoli aggiuntivi ed i ruoli possono anche essere gerarchici, dove livelli più alti sono composti dai permessi dei ruoli dei livelli inferiori.

Quando si definisce un RBAC si usano le seguenti convenzioni:

  • S = Soggetto = una persona o un agente automatico
  • R = Ruolo = funzione di lavoro o titolo che definisce un livello di autorità
  • P = Permessi = approvazione della modalità di accesso alla risorsa
  • SE = Sessione = una collegamento che coinvolge S, R e/o P
  • SA = Assegnazione al soggetto
  • PA = Assegnazione di permesso
  • RH = Gerarchia di ruolo ordinata parzialmente. RH può anche essere scritta come: ≥ (la notazione x ≥ y significa che x eredita i permessi di y)
  • Un soggetto può avere più ruoli.
  • un ruolo può avere più soggetti.
  • Un ruolo può avere più permessi.
  • Un permesso può essere assegnato a più ruoli.

Utili può certamente essere il seguente PDF dell’Università di Bologna sull’argomento, liberamente scaricabile:

RBAC

** Se puoi sostenere il mio lavoro, comprami un libro **

Be the first to comment on "Cos’è l’ RBAC?"

Leave a comment