Analisi e progetto di un sistema di controllo degli accessi ad un edificio

   page       BibTeX_logo.png       attach   
@mastersthesis{rbactufo06,
    abstract = {Lo sviluppo tecnologico degli ultimi anni, in termini di potenza computazionale, capacit\`{a} di memoria, miniaturizzazione, interoperabilit\`{a} e integrazione dei dispositivi, ha consentito l'adozione di sistemi informatici in molti campi, generando allo stesso tempo un aumento considerevole della complessit\`{a} delle applicazioni. In particolare, la capacit\`{a} di trattare caratteristiche che fino a poco tempo fa erano appannaggio di poche applicazioni specializzate, quali la distribuzione del sistema su nodi diversi, in cui l'interazione delle varie parti \`{e} predominante rispetto alla computazione concentrata dei singoli, e l'apertura ad ambienti di esecuzione dinamici e spesso non predicibili a priori, comincia oggi a essere un requisito imprescindibile che decreta il successo nel tempo o il rapido accantonamento di un sistema software. I progettisti si trovano quindi a dover fronteggiare, oltre alle difficolt\`{a} intrinseche dell'ambito applicativo in esame, problemi pi\`{u} generali che coinvolgono sia la gestione della complessit\`{a} del sistema durante le fasi di analisi e progettazione, sia lo studio di problemi derivanti proprio dalle nuove caratteristiche computazionali, quali ad esempio l'eterogeneit\`{a} delle varie parti componenti del sistema, la qualit\`{a} di servizio e, non ultimo, la sicurezza. In questo contesto cos\`{i} dinamico, le vecchie tecniche di ingegneria del software, basate sull'astrazione di ?oggetto? o di ?componente? come unit\`{a} di modellazione e progettazione, non sono pi\`{u} sufficientemente espressive per cogliere i nuovi requisiti computazionali. Il paradigma ad agenti \`{e} recentemente emerso come un insieme di modelli e tecnologie che supportano l'analisi e la progettazione di sistemi software complessi, mediante l'utilizzo di nuove astrazioni. L?adozione di questo nuovo approccio consente di modellare un sistema complesso come un sistema multi-agente, cio\`{e} come una collezione di entit\`{a} software autonome, flessibili e proattive, gli agenti, ciascuno dei quali rappresenta un flusso indipendente di controllo all?interno del sistema. Ogni agente ha degli obiettivi propri da conseguire, interagisce con altri agenti e con l?ambiente circostante mediante protocolli e linguaggi di alto livello e pu\`{o} partecipare a societ\`{a}, insiemi di agenti con obiettivi comuni, paragonabili a sottoparti del sistema complessivo; ogni agente ricopre uno pi\`{u} ruoli all'interno delle societ\`{a} in cui opera e cerca di raggiungere degli obiettivi necessari al buon funzionamento della societ\`{a} stessa. Tuttavia la semplice interazione tra agenti, se non regolata, pu\`{o} portare il sistema ad avere comportamenti diversi da quelli previsti; bisogna evitare infatti, particolarmente in ambienti aperti, che essi interferiscano in qualche modo tra di loro, ostacolandosi a vicenda nel raggiungimento degli obiettivi. Per scongiurare questo tipo di problemi, \`{e} necessario introdurre opportuni metodi mediante i quali l'interazione pu\`{o} essere regolata e controllata, evolvendo da semplice interazione a coordinazione; in altre parole, il funzionamento di un sistema multi-agente richiede leggi globali che gli agenti devono rispettare quando interagiscono tra loro e 3 con l'ambiente che li circonda. A tale scopo \`{e} stato introdotto di recente un modello di coordinazione tra agenti, basato su un'interazione mediata da un mezzo di coordinazione, dove la stessa interazione viene sia abilitata, grazie alle primitive di coordinazione offerte dal mezzo, sia regolata da opportune leggi sociali, inglobate nel mezzo e applicate dallo stesso. In questo nuovo modello sono necessarie opportune tecniche che supportino l'analisi e la progettazione esplicita dell'interazione e delle leggi che la regolano, essendo la gestione della stessa non pi\`{u} un compito in carico al singolo agente, ma un servizio che deve essere fruibile da qualsiasi agente nell'ambiente in cui andr\`{a} ad operare. SODA \`{e} una nuova metodologia di analisi e progettazione orientata agli agenti, che si concentra principalmente su tematiche di interazione tra gli stessi, non tenendo in conto volontariamente problemi di progettazione individuali legati al singolo agente. Partendo dalle considerazioni fin qui svolte, mediante questa tesi si vuole dare un'idea di come sia possibile utilizzare proficuamente il paradigma ad agenti nello sviluppo di un sistema complesso, applicando le teorie che verranno illustrate all'analisi e progettazione di un sistema di controllo d'accesso fisico ad un edificio. La scelta del controllo d'accesso come caso applicativo non \`{e} casuale, essendo questo uno dei problemi che emergono quando si utilizzano metodologie ad agenti per progettare sistemi aperti. Infatti, in ambienti distribuiti e dinamici, in cui gli agenti hanno a disposizione delle risorse condivise, \`{e} necessario l'utilizzo di sistemi di controllo d'accesso alle stesse, con lo scopo di prevenire utilizzi malevoli da parte di agenti fraudolenti, lasciandone tuttavia inalterata la disponibilit\`{a} agli agenti legittimi. In particolare, l'utilizzo stesso del mezzo di coordinazione (e la possibilit\`{a} quindi di poter interagire con altri agenti/risorse) pu\`{o} essere sottoposto a una decisione di controllo che limiti le primitive di coordinazione invocabili dagli agenti e offerte dal mezzo. A questo proposito, il fatto che un agente ricopra almeno un ruolo all'interno di una societ\`{a} pu\`{o} essere opportunamente sfruttato come parametro su cui basare le decisioni d'accesso. Storicamente infatti, i sistemi di controllo d'accesso sono ripartiti in due grandi categorie: quelli DAC, basati sul modello della matrice di controllo d'accesso, e quelli MAC, basati su divisioni di utenti e risorse in classi e su reticoli delle stesse. Entrambi questi modelli hanno in comune la caratteristica di assegnare i permessi sulle risorse direttamente agli utenti, con lo svantaggio che bisogna riportare ogni modifica fatta per un utente su tutte le risorse per cui l'utente ha dei permessi, e viceversa. Di recente ha invece cominciato a diffondersi un nuovo standard, il Role Based Access Control, che introduce un livello di indirezione tra utenti e permessi attraverso il concetto di ruolo, ovvero di una mansione assegnata all'interno di una societ\`{a}, che implica il possesso di autorizzazioni ben definite per essere portata a termine: in questo nuovo modello, i permessi non appartengono direttamente agli utenti, ma vengono invece assegnati ai ruoli; un utente acquista permessi entrando a far parte di uno o pi\`{u} ruoli. Essendo i ruoli praticamente fissi in una data 4 societ\`{a} e dovendo ogni utente necessariamente ricoprirne uno, il vantaggio di utilizzare questa nuova tecnica, in particolar modo dal punto di vista amministrativo, \`{e} evidente: modifiche ai permessi di ogni ruolo si riflettono automaticamente sugli utenti che ricoprono quel ruolo e un cambiamento nelle assegnazioni dei ruoli agli utenti non comporta il cambiamento dei permessi per ogni singolo utente. Di conseguenza in questa tesi si analizzeranno, oltre agli argomenti menzionati in precedenza, anche caratteristiche specifiche del controllo d'accesso generale e basato su ruoli e si vedr\`{a} come applicare questi concetti al mondo degli agenti. In particolare, nel Capitolo 1 verr\`{a} analizzato lo standard Role Based Access Control, per il controllo d'accesso basato su ruoli e nel Capitolo 2 verranno proposte alcune direzione di ricerca ed estensioni per lo stesso standard. Nel Capitolo 3 invece sar\`{a} dato spazio all'analisi di modelli ad agenti e si vedr\`{a} in dettaglio la tecnica SODA menzionata in precedenza. Nel Capitolo 4 si vedr\`{a} come coniugare controllo d'accesso e tecnologie ad agenti mediante il concetto di Agent Coordination Context, esaminando come ci\`{o} \`{e} stato implementato nell'infrastruttura TuCSoN. Infine, nei Capitoli 5, 6 e 7 verr\`{a} analizzato e implementato il sistema di controllo d'accesso fisico ad un edificio e sar\`{a} data una dimostrazione del suo funzionamento per il caso applicativo di un edificio universitario.},
    author = {Felice Tufo},
    available = {2008-06-16},
    contact = {Molesini, Ambra},
    cosupervisor = {Molesini, Ambra},
    cycle = {LM},
    description = {L'obiettivo della tesi \`{e} quello di realizzare un sistema di controllo degli accessi ad un edificio attraverso l'uso di tecnologie ad agenti. In particolare sar\`{a} indagato il recente standard Role Base Access Control(RBAC) e sar\`{a} utilizzata una opportuna metodologia di progetto orientata agli agenti.},
    language = {it},
    month = jul,
    start = {2006-01-02},
    supervisor = {Denti, Enrico},
    title = {Analisi e progetto di un sistema di controllo degli accessi ad un edificio},
    type = {Master's thesis},
    year = 2006
}