Sicurezza web: autenticazione e autorizzazione​

AUTENTICAZIONE
E AUTORIZZAZIONE

L'autenticazione è il processo chiave che consente di identificare gli utenti che cercano di accedere a un sito web, mentre l'autorizzazione definisce i permessi assegnati a tali utenti dopo un'identificazione riuscita.

Il processo di autenticazione
coinvolge tre elementi:

Qualcosa che so

Ovvero un’informazione che l’utente deve fornire per poter accedere, come una password, un PIN o la risposta ad una domanda

Qualcosa che ho

Ovvero qualcosa di cui l’utente è materialmente in possesso, come bancomat, scheda SIM, badge, ecc...

Qualcosa che sono

Include l’ambito dei metodi di autenticazione biometrica, come scansione della retina, impronta digitale, riconoscimento vocale o facciale

Single Sign-On (SSO) |

L’accesso a numerosi siti e servizi richiede spesso credenziali separate, comportando sforzi e rischi associati alla gestione di diverse combinazioni di username e password. Qui entra in gioco il concetto di SSO.
L’idea chiave è semplificare l’esperienza di accesso consentendo agli utenti di utilizzare un’unica identità per accedere a una serie di servizi senza la necessità di immettere ripetutamente le credenziali.
Questo concetto di “accesso unico” non solo rende la vita degli utenti più comoda, ma contribuisce anche a rafforzare la sicurezza.
La correlazione tra autenticazione, autorizzazione e SSO diventa chiara quando consideriamo come l’utente, una volta autenticato con successo, possa beneficiare di un unico accesso per sfruttare una serie di servizi, evitando il bisogno di autenticarsi nuovamente su ciascun sito o applicazione.

Tipologie di SSO:

Centralizzato

Un'unica autorità gestisce l'identità e l'accesso degli utenti a tutti i servizi.

Federato

Diverse organizzazioni collaborano per consentire l'accesso ai propri servizi tramite un'unica identità.

Collaborativo

Coinvolge un gran numero di organizzazioni che si accordano per condividere l'accesso a servizi specifici. Un esempio comune è l'accesso a numerosi siti web utilizzando un account Google o altri provider di identità di terze parti.

Protocolli per lo scambio di informazioni sull'autenticazione

Nel contesto dei protocolli per lo scambio di informazioni sull’autenticazione, Security Assertion Markup Language (SAML) e OAuth emergono come standard cruciali.
SAML è un protocollo standard basato su XML utilizzato per lo scambio di informazioni di autenticazione e autorizzazione tra differenti domini di sicurezza. Non prevede la crittografia, deve quindi essere affiancato da altri protocolli, per esempio HTTPS.
OAuth è un protocollo che coinvolge l’emissione di token di accesso, che rappresentano le autorizzazioni dell’utente per accedere a risorse specifiche. Questi token, dovranno essere utilizzati per tutte le comunicazioni.

Esempio di sitema di autenticazione

Sistema Pubblico di Identità Digitale SPID