Sicurezza delle architetture orientate ai servizi

A.A. 2023/2024
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 approfondire 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.
Corso singolo

Questo insegnamento può essere seguito come corso singolo.

Programma e organizzazione didattica

Edizione unica

Responsabile
Periodo
Secondo semestre

Programma
L'insegnamento verte sui seguenti argomenti:

- Introduzione alla Sicurezza nelle Architetture Orientate ai Servizi
- Crittografia e firma digitale su dati semi-strutturati
- Sicurezza dei Web Service
- WS-Security, WS-Trust
- WS-Secure Conversation, WS-Security Policy
- Sicurezza dei servizi REST e delle API
- Attacchi via malware ai servizi web
- Dai servizi ai processi
- Sicurezza dei processi e orchestrazioni sicure
- Concetti di base sull'identità e autenticazione
- Servizi 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: ISO 27000
- Metodologie di modellazione delle minacce: STRIDE
- STRIDE-AI per pipeline di analisi dei dati
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 dell'insegnamento.

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 ([email protected])
ufficio presso il Dipartimento di Informatica - via Celoria 18, 20133 Milano