260 likes | 412 Views
Autorizzazione. Controllo degli accessi. Per sistema per il controllo degli accessi , si intende: “ l’insieme di meccanismi che garantiscono che le entità che accedono a delle risorse in un sistema lo facciano nel rispetto di una serie di regole predefinite”.
E N D
Controllo degli accessi Per sistema per il controllo degli accessi, si intende: “ l’insieme di meccanismi che garantiscono che le entità che accedono a delle risorse in un sistema lo facciano nel rispetto di una serie di regole predefinite”
Autenticazione e controllo accessi È bene distinguere chiaramente tra: • autenticazione • controllo degli accessi Il controllo degli accessi assume che l'identità dell'individuo sia stata verificata con successo prima di imporre una propria politica. In generale non esistono politiche che siano migliori di altre, piuttosto esistono politiche che assicurino maggiore protezione di altre, ma non tutti i sistemi hanno gli stessi requisiti di sicurezza. La scelta delle politiche dipende dall'ambiente che si deve proteggere. Le politiche di controllo degli accessi ricadono in due categorie: • politiche discrezionali • politiche mandatorie
Le componenti Nella definizione di un sistema di controllo degli accessi distinguiamo diverse componenti: • i soggetti cioè le entità attive del sistema, quelle che svolgono le operazioni, tipicamente utenti e processi • gli oggetti cioè le entità si cui vengono svolte le operazioni, tipicamente file, data base, stampanti, ecc… • le operazioni che i soggetti possono svolgere sugli oggetti come “read”, “write” “execute”, “run”, ecc… • per ogni oggetto esiste un soggetto speciale, il proprietario, che gode di particolari diritti sull’oggetto stesso.
Approcci I controlli che il sistema deve effettuare vengono espressi attraverso opportune regole di controllo degli accessi che definiscono per ogni coppia soggetto-oggetto le possibili operazioni che possono essere svolte. Esistono diversi approcci per la definizione di tali regole, quelli più noti sono: • DAC (Discretionary Access Control); • MAC (Mandatory Access Control), • RBAC (Role Based Access Control).
DAC e MAC DAC e MAC sono stati definiti per la prima volta nell’Orange Book (o TCSEC Trusted Computing System Evaluation Criteria). • DAC è sostanzialmente il sistema di riferimento per la definizione di regole per il controllo degli accessi da utilizzare in applicazioni i cui requisiti di sicurezza sono quelli dettati dal mondo commerciale o civile • MAC trova la sua applicazione essenzialmente in applicazioni di tipo militare.
DAC (Discretionary Access Control) • il proprietario di un oggetto determina chi vi può accedere e quali operazioni può svolgere sull’oggetto stesso • viene usato in tutti quei sistemi in cui i dati possono essere facilmente ricondotti ad un proprietario • esiste la necessità di condividere o scambiarsi tali dati con altri utenti • senza dover chiedere un’autorizzazione all’amministratore del sistema o della base di dati
Gestione DAC centralizzata Un sistema di controllo degli accessi basato sull’approccio DAC può essere anche gestito centralmente in questo caso l’amministratore del sistema deve diventare proprietario di tutti i dati presenti nel sistema e determina quali operazioni assegnare a ciascun utente.
ACL • L’approccio più diffuso per l’implementazione di un sistema DAC è quello che usa le ACL (Access Control List). Esiste una ACL, per ogni oggetto di un sistema, che specifica tutti i soggetti abilitati all’accesso a questo oggetto e le operazioni che vi possono svolgere. • La maggior parte dei DBMS commerciali consente oggi di definire, associate con i vari schemi della base di dati, delle tabelle per il controllo degli accessi che si rifanno all’approccio DAC.
MAC (Mandatory Access Control) Nell’approccio MAC al controllo degli accessi, le decisioni su chi accede ad un oggetto e sul tipo di operazioni che può compiere, non vengono prese dal proprietario dell’oggetto stesso ma da un’autorità centrale che supervisiona l’intero funzionamento del sistema.
Scelta dei diritti I diritti di accesso assegnati ad un utente vengono solitamente dettati da due parametri: • il livello di affidabilità dell’utente nell’ambito dell’organizzazione; • il livello di sensibilità dei dati coinvolti.
Definizione di una gerarchia Questo significa che per poter applicare un controllo degli accessi basato su MAC è necessario aver definito una gerarchia tra gli utenti di un’organizzazione e soprattutto una classificazione dei dati.
Militare-Civile Le classificazioni più utilizzate in quest’ultimo caso sono a 5 livelli per sistemi militari e a 3 livelli per sistemi civili • Nel primo caso i dati vengono suddivisi in: non classificati, classificati, confidenziali, segreti, top-secret. • Nel secondo: pubblici, proprietari e interni.
Combinare DAC e MAC DAC e MAC non sono tra loro mutuamente esclusivi e possono essere combinati. In questo caso MAC ha la precedenza. Quando un utente vuole accedere ad un oggetto: • si verifica in prima istanza se l’utente soddisfa i requisiti imposti dal MAC • successivamente vengono applicate le regole imposte dal DAC
RBAC • Con il role-based access control, le autorizzzioni vengono decise in base al ruolo che i singoli utenti ricropono in un organizzazione • Agli utenti viene quindi assegnato un rulo (quale dottore, infermiere, manager). • Il processo di definizione dei ruoli deve basarsi sun un attenta analisi di come una organizzazione opera e deve includere tutto lo spettro degli utenti
Componenti • Le operazioni che un utente può effettuare si basano sul ruolo ricoperto. • L’appartenenza di un utente ad un ruolo può essere revocata facilmente e nuovi ruoli possono essere definiti in base agli incarichi possibili. • Quando nuove operazioni vengono definite possono essere definite le associazioni con i ruoli e le vecchie operazioni possono essere cancellate per seguire l’evoluzione dell’organizzazione. • Questo semplifica l’amministrazione e la gestione dei diritti; i ruoli possono essere aggiornati senza cambiare i privilegi per i singoli utenti in modo individuale.
Quando un utent ricopre un ruolo può godere solo dei diritti associati a quel ruolo. • Ciò significa identificare il minimo set di diritti necessario a svolgere un determinato lavoro. • Nelle organizzazioni poco controllate fare ciò è difficile. • In molte organizzazioni c’è un overlap della funzioni, tuttavia garantire i massimo set di diritti può essere pericoloso.
Con RBAC è possibile consentire l’overlap delle responsabilità • Alcune operazioni generali possono essere effettuate da tutti gli utenti. • Piuttosto che definire tantio ruoli si usa una organizzaione gerarchica. • Una gerarchia di ruoli definisce degli attributi unici e delle relazioni di inclusione tra ruoli.. • Nel caso sella sanità il ruolo Medico contiene il ruolo di Interno che contiene il ruolo di Paziente
Gerarchia dei ruoli • Role hierarchies are a natural way of organizing roles to reflect authority, responsibility, and competency • Organizations can establish the rules for the association of operations with roles. • Operations can also be specified in a manner that can be used in the demonstration and enforcement of laws or regulations. For example, a pharmacist can be provided with operations to dispense, but not to prescribe, medication.
Granting of user membership to roles can be limited. • Some roles can only be occupied by a certain number of employees at any given period of time. • The role of manager, for example, can be granted to only one employee at a time.
Properly-administered RBAC system enables users to carry out a broad range of authorized operations, and provides great flexibility and breadth of application. System administrators can control access at a level of abstraction that is natural to the way that enterprises typically conduct business. This is achieved by statically and dynamically regulating users' actions through the establishment and definition of roles, role hierarchies, relationships, and constraints.
Thus, once an RBAC framework is established for an organization, the principal administrative actions are the granting and revoking of users into and out of roles
Further, it is possible to associate the concept of an RBAC operation with the concept of "method" in Object Technology. This association leads to approaches where Object Technology can be used in applications and operating systems to implement an RBAC operation.
For distributed systems, RBAC administrator responsibilities can be divided among central and local protection domains • central protection policies can be defined at an enterprise level while leaving protection issues that are of local concern at the organizational unit level