di Pierluigi Paganini*
In questo articolo parliamo di Single Sign-On, vedendo cos’è, quali sono i vantaggi e i rischi, le modalità in cui può essere strutturato e i sistemi che possono essere usati per farlo.
Cos’è il Single Sign-On
Il Single Sign-On, anche noto come SSO, si ha quando un sistema di controllo d’accesso consente a un utente accreditato un’unica autenticazione per l’accesso a più applicazioni, servizi e risorse.
In un modello di Single Sign-On le richieste di autenticazione sono gestite da un sistema di terze parti, che in precedenza ha certificato le credenziali dell’utente connesso. Ogni volta che l’utente decide di accedere a un servizio per cui è accreditato, le sue richieste sono inoltrate al sistema centrale, che gestisce il meccanismo di autenticazione. All’utente, quindi, non sarà chiesto di inserire nuovamente le credenziali.
La principale spinta all’adozione di un sistema di Single Sign-On è la necessità di semplificare il processo di autenticazione. L’utente, infatti, non deve farsi carico della gestione sicura degli accessi. Ciò porta, sia all’utente che agli amministratori del sistema, vantaggi in termini di sicurezza e manutenibilità.
Vantaggi e rischi del Single Sign-On
I vantaggi di un sistema Single Sign-On sono i seguenti:
- semplificazione della gestione delle password. Infatti, maggiore è il numero di password da usare, più è probabile che vengano scelte password facili da ricordare o che siano usate le stesse password per accedere a servizi differenti, a discapito della sicurezza;
- semplificazione accesso ai servizi;
- aumento della sicurezza e gestione ottimizzata delle politiche di sicurezza;
- adempimento delle misure minime previste dalle norme in tema di sicurezza e gestione dei dati.
I rischi del Single Sign-On sono legati, invece, alla terza parte che gestisce gli accessi dell’utente.
Per la natura stessa dei processi di Single Sign-On, l’entità terza che autentica l’accesso degli utenti ai vari servizi è l’elemento cruciale. Dalla sua corretta implementazione della funzionalità di autenticazione dipendono l’efficacia e l’affidabilità dell’intero sistema.
Un sistema di terze parti che, ad esempio, non riesce a gestire contemporaneamente l’intera utenza per cui è accreditato, può portare all’indisponibilità dei servizi per molti utenti. Un problema analogo si presenta se, per qualsiasi motivo, il sistema smette di funzionare.
Differenze tra tipi di SSO
I sistemi SSO possono essere implementati in modalità differenti, in base al modo di gestione dell’archivio delle credenziali dell’utenza.
Esistono, al riguardo, tre approcci per la creazione di un sistema di SSO: l’approccio centralizzato, l’approccio federativo e l’approccio cooperativo.
SSO centralizzato
Nell’approccio centralizzato, si dispone di un database unico e centralizzato dell’intera utenza. Tipicamente, infatti, questo approccio è usato nelle aziende dove un’unica entità centrale gestisce le richieste di autenticazione di tutti i dipendenti.
SSO federativo
Si regge sulla federazione di gestori differenti. Ogni volta che un utente accede ai sistemi controllati da uno dei gestori, è automaticamente autenticato anche a tutti i servizi gestiti dagli altri.
Tale approccio risulta estremamente utile in contesti istituzionali, dove enti diversi erogano servizi al cittadino. Ogni utente, infatti, può autenticarsi attraverso uno dei gestori e accedere in maniera semplice a tutti i servizi delle entità federate. In un’amministrazione comunale, ad esempio, il cittadino può autenticarsi ai servizi erogati dall’anagrafe e fruire, senza doversi autenticare nuovamente, dei servizi del settore tributi.
Va detto, comunque, che in un modello simile ogni gestore federato mantiene il controllo della propria politica di sicurezza.
In Europa, in particolare in Francia, l’autenticazione federata è molto diffusa. In Italia uno dei progetti più interessanti è l’autenticazione federata GARR IDEM, che può considerarsi la prima federazione italiana di Infrastrutture di Autenticazione e Autorizzazione (AAI). GARR IDEM, infatti, offre ai ricercatori degli istituti di ricerca, ai docenti e agli studenti delle università la possibilità di usare una sola identità e una sola password per accedere a diversi servizi in Rete.
SSO cooperativo
Il Single Sign-On cooperativo si fonda, invece, sul principio per cui il singolo utente dipende, per ciascun servizio, da uno solo dei gestori federati.
Anche in questo caso ogni gestore gestisce in modo indipendente la propria politica di sicurezza.
Quali sono i sistemi più usati per l’SSO
Tra i sistemi più usati per implementare il Single Sign-On c’è Shibboleth. Si tratta di un sistema software open source che, attraverso una singola autenticazione web, permette all’utente di accedere ai servizi protetti della propria organizzazione e delle altre organizzazioni che aderiscono a una federazione.
Altre soluzioni per l’implementazione di Single Sign-On sono Light-Weight Identity, Open ID, Java Open Single Sign-On e JA-SIG Central Authentication Service (CAS).
*Pierluigi Paganini
Membro Gruppo di Lavoro Cyber G7 2017 presso Ministero degli Esteri
Membro Gruppo Threat Landscape Stakeholder Group ENISA
Collaboratore SIPAF presso il Mef