vuoi
o PayPal
tutte le volte che vuoi
Il controllo dell’accesso regola le operazioni che si possono compiere sui dati e le risorse, con lo scopo di
limitare e controllare le operazioni effettuate dagli utenti (prevenendo azioni che potrebbero
compromettere la correttezza e la sicurezza dei dati).
Nel controllo dell’accesso si distinguono 3 entità:
- oggetti, cioè le risorse da proteggere
- soggetti, cioè le entità che richiedono di poter accedere alle risorse
- privilegi, che sono le operazioni che i soggetti possono fare sugli oggetti
Il controllo dell’accesso è rispettato attraverso le Politiche di sicurezza (insieme regole e principi che
rappresentano direttive ad alto livello, che esprimono le scelte compiute in merito alla protezione dei
dati), tutte le politiche sono tradotte in un insieme di Autorizzazioni che stabiliscono i diritti dei soggetti a
poter accedere a determinati oggetti.
Le autorizzazioni vengono rappresentate mediante una tupla “tripla” (s,o,p) dove:
s è il soggetto a cui l’autorizzazione è concessa
- o è l’oggetto su cui l’autorizzazione è concessa
-
- p è il privilegio che s può esercitare su o
Il controllo dell’accesso è effettuato mediante il “reference monitor” (meccanismo di controllo), che
intercetta ogni comando e stabilisce, analizzando le autorizzazioni, se il soggetto è autorizzato a
compiere l’accesso richiesto. Le Politiche di sicurezza sono
suddivise in 2 classi:
- politiche per il controllo
dell’accesso ai dati (definiscono
i criteri secondo cui concedere
o negare l’accesso alle info del
sistema)
politiche per l’amministrazione
-
della sicurezza (definiscono chi
concede/revoca i diritti di
accesso)
La limitazione degli accessi, ossia la quantità di informazione accessibile a un soggetto, viene
determinata tra 2 principi:
Need to know (principio del minimo privilegio), permette l’accesso ai
- soli dati strettamente necessari.
Vantaggi: ottima garanzia di sicurezza, adatto il contesti di forti esigenze di sicurezza
Svantaggi: porta ad un sistema eccessivamente protetto, negando anche accessi che non
compromettono la sicurezza dei dati
- Maximized sharing (principio della massima condivisione), consente il massimo accesso di
informazioni ai soggetti, mantenendo comunque alcune info riservate.
Vantaggi: soddisfa il massimo numero possibile di richieste
Svantaggi: utilizzato in ambienti con una certa fiducia tra gli utenti e non è sentita una forte
esigenza di protezione
I sistemi per il controllo dell’accesso vengono distinti in:
in cui l’accesso è permesso
- sistemi aperti, a meno che non sia esplicitamente negato (le
autorizzazioni stabiliscono per ogni soggetto i privilegi che NON può esercitare), questo sistema si
adatta al principio di massima condivisione
l’accesso è permesso
- sistemi chiusi, solo se esplicitamente autorizzato (le autorizzazioni indicano
per ogni soggetto tutti e soli i privilegi che egli può esercitare), questo sistema si adatta col principio di
minimo privilegio.
n.b. La maggior parte dei DBMS commerciali si comporta come un sistema chiuso, dato che offre
maggiori garanzie di sicurezza.
Politiche per il controllo dell’accesso
Le politiche per controllo dell’accesso stabiliscono i criteri in base ai quali i soggetti possono accedere
agli oggetti nel sistema ed eventualmente se e come i diritti d'accesso possono venire trasmessi a terzi.
Vengono classificate in tre categorie:
- Politiche discrezionali
dette discrezionali, in quanto permettono agli utenti di concedere o revocare dei diritti di
l’accesso sulla base dell’identità del
accesso sugli oggetti a loro discrezione. Controllano
soggetto, tradotte in un insieme di autorizzazioni che stabiliscono esplicitamente i privilegi di
(accordano l’accesso se concesso da
ogni soggetto sugli oggetti del sistema
un’autorizzazione).
I meccanismi discrezionali sono vulnerabili ad attacchi di tipo “cavalli di Troia” (cavalli di Troia
sono programmi che apparentemente svolgono un compito utile ma che contengono istruzioni
nascoste che utilizzano fraudolentemente le autorizzazioni degli utenti che li eseguono per
trasferire illegalmente informazioni, senza violare le limitazioni imposte dalla politica
discrezionale)
Vantaggi: estremamente flessibili e adatte a numerosi contesti applicativi
Svantaggi: non controllano il flusso di informazioni nel sistema, dato che non impongono
restrizioni su come l’info viene trasmessa da un soggetto autorizzato a uno non autorizzato ad
accedervi
- Politiche mandatorie
chiamate anche etichette per i soggetti e gli oggetti del sistema, regolano l’accesso ai dati
mediante la definizione di classi di sicurezza (ordinate parzialmente o totalmente da una
relazione d’ordine).
La classe di sicurezza assegnata ad un oggetto è una misura della sensibilità dell’informazione
che l’oggetto contiene (maggiore è la classe assegnata all’oggetto, più ingente è il danno
derivante dal rilascio di informazioni in esso contenute).
La classe di sicurezza assegnata ad un soggetto è una misura del grado di fiducia del soggetto
a non commettere violazioni della politica, e a non trasmettere ad altri info riservate.
Tra le 2 classi di sicurezza deve intercorrere una relazione affinché il soggetto possa esercitare
un privilegio sull’oggetto, questa relazione è stabilita da assiomi di sicurezza che regolano il
controllo dell’accesso (la relazione da soddisfare dipende dal privilegio).
Le politiche mandatorie sono applicate in ambienti militari, dove ci sono forti esigenze di
protezione ed è possibile classificare gli elementi di sistema (sistemi multi-livello).
n.b. politiche mandatorie e discrezionali possono essere usate congiuntamente.
- Politiche basate sui ruoli
i privilegi non sono assegnati agli utenti ma sono mediati dal concetto di ruolo, un ruolo
rappresenta una funzione all’interno di un’azienda od organizzazione (es. direttoreVideoteca,
commesso, cliente). Le autorizzazioni non sono concesse ai soggetti ma ai ruoli, ogni soggetto
è poi abilitato a ricoprire uno o più ruoli e acquisirne le autorizzazioni associate.
Il ruolo semplifica la gestione delle autorizzazioni, nelle aziende/organizzazioni i privilegi sono
spesso legati al ruolo che i soggetti ricoprono e non ai soggetti stessi (le politiche basate sui
ruoli rendono più diretta la modellazione delle politiche aziendali).
Vantaggi: un ruolo di solito raggruppa un elevato numero di privilegi (in questo modo è
sufficiente specificare il ruolo quando un utente deve svolgere una mansione, invece di
specificare per ogni utente tutte le autorizzazioni associate al ruolo), un ruolo è più stabile
rispetto agli utenti (che possono cambiare o cambiare mansione).
n.b. Configurando opportunamente il sistema dei ruoli, questo tipo di politica può essere usato
per realizzare sia politiche discrezionali che mandatorie.
Modelli per il controllo dell’accesso in SQL
Un modello per il controllo dell’accesso definisce come vadano specificati i soggetti, gli oggetti e i privilegi
nelle autorizzazioni (specifica la relazione tra soggetto s e oggetto o, affinché s possa esercitare su o il
privilegio p).
Modello a matrice di accesso (modello di riferimento nei sistemi a politiche discrezionali)
Lo stato corrente del sistema rispetto alle autorizzazioni è descritto dalla tripla (S,O,M):
S è l’insieme di soggetti;
- O è l’insieme
- di oggetti;
- M è la matrice di accesso, in cui ogni riga corrisponde al un oggetto, ogni colonna ad un oggetto, e
l’elemento M [i,j] contiene la lista dei privilegi esercitabili dal soggetto Si sull’oggetto Oj.
La matrice d’accesso è solo un modello concettuale, nelle situazioni reali risulterebbe molto sparsa e
di dimensioni troppo elevate (ogni soggetto ha accesso a pochi oggetti del sistema) le soluzioni nella
pratica sono 2:
- Access Control List (ACL), la matrice viene implementata mediante un insieme di liste associate ad
ogni oggetto (l’ACL associata ad ogni oggetto contiene un elemento per ogni soggetto che ha
privilegi sull’oggetto, tale elemento contiene la lista dei privilegi)
- Capability List, implementa la matrice mediante liste associate ai soggetti (la capability list
associata ad un soggetto contiene un elemento per ogni oggetto su cui ha dei privilegi, tale
elemento contiene la lista dei privilegi)
n.b. L’approccio ACL è quello usato sui moderni sistemi operativi, mentre le capability sono più
(un soggetto si autentica un sola volta presso l’host, acquisisce le sue
adatte a sistemi distribuiti
capability e le utilizza per accedere a tutti gli host che compongono il sistema).
Modello RBAC Role-Based-Access-Control (modello basato sui ruoli)
Ripasso: nel controllo dell’accesso basato su ruoli, i ruoli rappresentano le funzioni che gli utenti
ricoprono all’interno dell’organizzazione o azienda in cui operano.
I privilegi sono concessi ai ruoli invece che agli utenti, le autorizzazioni specificate per un ruolo sono
quelle necessarie a esercitare le funzioni offerte dal ruolo.
Gli utenti sono abilitati a ricoprire uno o più ruoli, in base alle mansioni che devono svolgere (implica
l’acquisizione delle autorizzazioni connesse al ruolo).
End_Ripasso.
Per rendere più agibile lo sviluppo di meccanismi per il controllo dell’accesso basati su ruoli, NIST
definisce un modello standard di riferimento basato su 3 componenti:
– “Core RBAC”, definisce i requisiti minimi per realizzare il controllo dell’accesso
- modello base
basato su ruoli, questo modello si compone di:
- utente: essere umano, macchina, processo, agente attivo nel sistema
ruolo: funzione all’interno di un contesto organizzativo, con associati dei privilegi
- diritti d’accesso esercitabili sugli oggetti del sistema, sono coppie (Obj, O), cove
- privilegi:
Obj è l’oggetto, O è l’operazione
- sessione: stabilisce la corrispondenza tra utente e ruoli attivi durante la sua connessione
– “Hierarchical RBAC”, aggiunge al modello base
- modello gerarchico la possibilità di strutturare i
relazione d’ordine parziale
ruoli in gerarchie (un ordinamento speziale fra di essi), introduce una
detta relazione di ereditarietà denotata con >= (se r1 e r2 sono ruoli, r1>=r2 implica che r1 eredita
tutti i privilegi di r2 e tutti gli utenti associati a r1 sono anche associati a r2) e prevede che un ruolo
possa effettuare sugli oggetti tutte le operazioni che vengono effettuate da ruoli corrispondenti a
funzioni più in basso nella gerarchia.
- Risolvere un problema di matematica
- Riassumere un testo
- Tradurre una frase
- E molto altro ancora...
Per termini, condizioni e privacy, visita la relativa pagina.