Sicurezza delle architetture orientate ai servizi

A.A. 2020/2021
6
Crediti massimi
48
Ore totali
SSD
INF/01
Lingua
Italiano
Obiettivi formativi
L'obiettivo dell'insegnamento è di illustrare le tecniche base per la confidenzialità ed integrità dei dati semi-strutturati e non strutturati.
Su queste basi, l'insegnamento ha come obiettivo quello di approfondisce la natura e il ruolo degli standard per l'autenticazione, la gestione delle identità e l'harvesting dei profili utente nei servizi Web e di illustrare i principali linguaggi di autorizzazione per l'accesso alle risorse di rete e di servizi Web, nonché i metodi per l'acquisizione e la rappresentazione dei metadati di assurance, arrivando a conoscere approfonditamente le tecniche e gli strumenti per l'assurance e la certificazione di sicurezza dei servizi.
Risultati apprendimento attesi
Al termine dell'insegnamento, lo studente dovrà essere in grado di: gestire i controlli di confidenzialità, integrità, autenticazione sull'interfaccia di servizi di rete; gestire le politiche di controllo dell'accesso e sicurezza dei servizi web; trattare le problematiche relative all'assurance e certificazione dei servizi web.
Programma e organizzazione didattica

Edizione unica

Responsabile
Periodo
Secondo semestre
METODI DIDATTICI
Le lezioni si terranno sulla piattaforma Microsoft Teams e potranno essere seguite sia in sincrono sulla base dell'orario del primo trimestre sia in asincrono perché saranno registrate e lasciate a disposizione degli studenti sulla medesima piattaforma.

PROGRAMMA E MATERIALE DI RIFERIMENTO
Il programma e il materiale di riferimento non subiranno variazioni.

MODALITA' DI VERIFICA DELL'APPRENDIMENTO E CRITERI DI VALUTAZIONE
L'esame si svolgerà nella tradizionale forma scritta.

L'esame scritto verrà svolto in videoconferenza tramite le tecnologie EXAM.NET + SEB + Zoom. Per partecipare all'esame sarà necessario possedere due device: il primo (ad esempio, un computer portatile) per compilare l'esame, il secondo uno smartphone con webcam (in alternativa la webcam del computer portatile) e microfono per la sorveglianza.

Per quanto riguarda il progetto, laddove la regolamentazione lo consentisse, verranno mantenute le medesime modalità in presenza. In caso contrario, verrà utilizzata la piattaforma Microsoft Teams o, in alternativa, Zoom.

I criteri di valutazione rimarranno invariati.
Programma
L'insegnamento verte sui seguenti argomenti:

- Introduzione alla Sicurezza nelle SOA
- Crittografia e firma digitale su dati semi-strutturati
- Sicurezza dei Web Service
- WS-Security, WS-Trust
- WS-Secure Conversation, WS-Security Policy
- Concetti di base sull'identità
- Tecnologie per la gestione dell'identità
- Piattaforme di identity management
- OAuth 2.0
- Open ID
- Linguaggi di autorizzazione a granularità fine
- Concetti di base delle architetture di valutazione e decisione
- XACML e SAML
- Profili XACML per settori applicativi
- Linguaggi di politiche special purpose
- Concetti generali di assurance
- Certificazione dei servizi
- Certificazioni di sicurezza
Prerequisiti
Conoscenza delle tecnologie Web, di formati di dati semi-strutturati e dei principali protocolli applicativi.
Metodi didattici
La parte di teoria viene svolta mediante lezioni frontali. Durante l'insegnamento saranno organizzate delle attività pratiche su programmazione e servizi.
Materiale di riferimento
Sito web:
http://edamianisaos.ariel.ctu.unimi.it/v5/Home/default.aspx

Slide e appunti del corso

Per consultazione: C.A. Ardagna, E. Damiani, N. El Ioini "Open Source Systems Security Certification," Springer, 2008.
Modalità di verifica dell’apprendimento e criteri di valutazione
L'esame consiste in una prova scritta e nella presentazione di un progetto.

La prova scritta, della durata di un'ora e mezza, verterà sugli argomenti trattati durante l'insegnamento. La prova consiste in domande teoriche ed esercizi pratici. Il progetto, da concordare con il Docente, consisterà nella preparazione di un semplice applicativo che implementi i protocolli di sicurezza studiati. il progetto può essere svolto in gruppi fino d un massimo di tre studenti.

Una volta superate la prova scritta e presentato il progetto, viene formulata la valutazione complessiva, espressa in trentesimi, tenendo conto dei seguenti parametri: grado di conoscenza degli argomenti, capacità di applicare le conoscenze alla risoluzione di un progetto concreto, qualità del progetto sviluppato, capacità di ragionamento critico, chiarezza espositiva e proprietà di linguaggio.
INF/01 - INFORMATICA - CFU: 6
Lezioni: 48 ore
Docente: Damiani Ernesto
Docente/i
Ricevimento:
Solo su appuntamento: contattare il Dott. Fulvio Frati (fulvio.frati@unimi.it)
ufficio presso il Dipartimento di Informatica - via Celoria 18, 20133 Milano