Capitolo 5.
Conclusioni e sviluppi futuri
5. Conclusioni e sviluppi futuri.
5.1 Conclusioni.
Il presente lavoro di tesi, svolto presso lʹIstituto di Informatica e Telematica del CNR di Pisa, ha preso in esame la problematica relativa alla gestione delle identità nellʹambito del protocollo SIP (Session Initiation Protocol). Allo stato attuale, il processo di gestione delle identità si basa su un singolo elemento discriminante, rappresentato dal SIP URI presente allʹinterno del messaggio di SIP Request (es. messaggio di INVITE), rendendo poco flessibile il processo decisionale associato alla gestione della richiesta.
L’obiettivo principale del lavoro di tesi è stato quello di introdurre un concetto esteso di identità dellʹutente, ovvero lʹidentità basata sui tratti. In un processo di identificazione basato sui tratti, abbandoniamo la concezione classica di identità associata al singolo identificativo, per fare spazio ad un
dellʹidentificativo, grazie allʹaccostamento di attributi aggiuntivi, che nellʹambito del processo di identificazione vengono definiti appunto tratti.
Il Security Assertion Markup Language, nella versione 2.0, rappresenta il nostro framework per la generazione e lo scambio di informazioni in maniera sicura.
La nostra implementazione di TB‐IdMS (Trait‐Based Identity Management System) prevede come strumento principale per la gestione dei tratti, le assertion SAML. Unʹassertion non è altro che un documento in formato XML contenente la definizione di un insieme tratti, generato da un Assertion Provider ed emesso utilizzando il meccanismo di sicurezza della firma digitale.
Le modalità con le quali si gestiscono le assertion SAML e i messaggi del protocollo vengono espresse nel SAML Binding. Lʹinsieme delle specifiche che riguardano lʹimpiego del framework SAML in un particolare contesto dʹuso è detto SAML Profile.
La soluzione proposta per la gestione delle identità basata su tratti, prevede la definizione di un nuovo Profilo SAML specifico per il protocollo applicativo SIP in ambiente VoIP.
Nel protocollo SIP sono definite delle entità chiamate proxy server, che si occupano principalmente della gestione e lʹinoltro dei messaggi del protocollo verso gli utenti : i messaggi di richiesta di un utente sono inviati verso il suo proxy server, il quale li elabora e li inoltra verso il proxy server dellʹutente destinatario.
Il Profilo SAML definito nel nostro lavoro, specifica le modalità attraverso le quali i vari proxy server, possono gestire i tratti associati ai propri utenti : quando un proxy server riceve un messaggio di INVITE da un utente del proprio dominio, richiede ad unʹentità logica chiamata Assertion Provider, di generare lʹassertion relativa allʹutente dal quale ha ricevuto il messaggio di
richiesta. Lʹassertion creata, contiene tutte le informazioni relative ai tratti definiti per lʹutente, allʹentità che lʹha creata e le modalità con le quali sarà rilasciata. A questo punto il proxy server inserisce lʹURI dal quale potrà essere scaricata lʹassertion, allʹinterno dellʹintestazione Identity‐Info del messaggio di INVITE e lo inoltra verso il proxy server del destinatario.
Il proxy server che riceve tale richiesta, scarica lʹassertion dallʹURI indicato nel campo Identity‐Info, ne verifica il contenuto ed elabora i tratti dellʹutente chiamante.
In questo modo i due proxy server si sono scambiati le informazioni relative ai tratti dellʹutente in maniera semplice e sicura.
Attraverso la definizione di tratti è possibile aumentare la granularità delle policy di utilizzo dei servizi definite allʹinterno del proxy server : attualmente si possono applicare solo dei filtri definiti a livello di nomi di dominio, mentre utilizzando il nostro sistema delle identità basato sui tratti, è possibile creare delle policy più dettagliate potendo per esempio, definire lʹaccesso a servizi solo per utenti in possesso di determinati tratti.
Altro vantaggio, risiede nella possibilità di interoperare con altri servizi e framework che prevedono lʹutilizzo delle assertion.
La piattaforma di identity management è stata sviluppata sulla base del Sip Express Router (SER), implementazione di un proxy server interamente scritta in linguaggio C e rilasciata sul licenza GPL dal consorzio iptel.org [1]. Il SER è composto da un nucleo che gestisce le funzionalità di base (es. parsing dei messaggi SIP, gestione della memoria) e da un insieme di moduli specifici per ogni funzione (es. accounting, gestione del database). Il sottosistema di gestione dei tratti, frutto di questo lavoro di tesi, è definito allʹinterno del modulo auth_saml.
Eʹ stato inoltre definita una piattaforma, denominata Trait Management System, attraverso la quale ogni utente ha la possibilità di gestire il proprio profilo dei tratti, cioè definire lʹinsieme degli attributi da rendere visibili allʹinterno delle assertion.
Durante l’intera attività di studio, si sono in oltre verificate importanti occasioni di confronto con il Dott. Hannes Tschofenig (Nokia Siemens Networks), coautore di un Internet‐Draft riguardante l’introduzione del framework SAML in SIP, del quale il presente lavoro di tesi, risulta essere attualmente l’unica implementazione su un proxy server.
Nonostante i numerosi aspetti messi in luce, il sistema di identity management sviluppato soffre di un limite riguardante la definizione di tratti ad‐hoc per lʹambiente VoIP, problematica che apre l’orizzonte a futuri lavori per lʹampliamento dellʹarchitettura.
5.2 Sviluppi Futuri.
La decisione di utilizzare SAML come framework per lo scambio sicuro degli attributi, offre la possibilità di integrare il nostro sistema di Identity Management con altri sistemi più complessi di gestione delle identità, quali ad esempio le architetture di Identity Federation, che già prevedono lʹutilizzo delle assertion. Allʹinterno di tali architetture è possibile definire attributi ad‐hoc in maniera concordata fra tutte le entità che fanno parte della federazione. La definizione di un attributo ad‐hoc comprende la specifica univoca per lʹintera federazione, del nome dellʹattributo e del set di valori che tale attributo può assumere.
In questo modo è possibile accogliere nuovi domini allʹinterno della federazione attraverso protocolli automatici che descrivono la sintassi e la semantica dei tratti in uso allʹinterno della federazione.