Autenticazione e autorizzazione: in che modo sono diversi?

Authn è l'abbreviazione di autenticazione e authz è l'abbreviazione di autorizzazione. Si tratta di due concetti separati ma strettamente correlati nel mondo della gestione delle identità e degli accessi (IAM).

Obiettivi di apprendimento

Dopo aver letto questo articolo sarai in grado di:

  • Confrontare autenticazione e autorizzazione
  • Descrivere i metodi di autenticazione comuni
  • Spiegare i diversi approcci di autenticazione

Argomenti correlati


Vuoi saperne di più?

Abbonati a theNET, il riepilogo mensile di Cloudflare sulle tematiche più discusse in Internet.

Fai riferimento all'Informativa sulla privacy di Cloudflare per scoprire come raccogliamo ed elaboriamo i tuoi dati personali.

Copia link dell'articolo

Autorizzazione (authz) e autenticazione (authn)

Nella sicurezza delle informazioni, l'autenticazione (abbreviata in authn) e l'autorizzazione (authz) sono concetti correlati ma separati. Entrambi sono una parte importante della gestione delle identità e degli accessi (IAM).

In che modo autenticazione e autorizzazione sono diversi? Per dirla semplicemente, l'autenticazione ha a che fare con l'identità, ovvero chi è qualcuno, mentre l'autorizzazione ha a che fare con le autorizzazioni, o permessi, ovvero ciò che qualcuno è autorizzato a fare.

Cos'è l'autenticazione (authn)?

Per autenticazione si intende assicurarsi che una persona o un dispositivo sia effettivamente chi (o cosa) dichiara di essere. A una persona che ritira i biglietti per un evento potrebbe essere chiesto di far mostrare la carta d'identità per verificare la propria identità; allo stesso modo, un'applicazione o un database potrebbe voler assicurarsi che un utente sia legittimo controllando la sua identità. L'autenticazione garantisce che i dati non vengano esposti alla persona sbagliata.

Quali sono alcuni metodi di autenticazione comuni?

Combinazione di nome utente e password

Uno dei metodi più comuni per l'autenticazione è richiedere a un utente di inserire il proprio nome utente e la password. Quando Jessica carica il suo account di posta elettronica nel browser, il servizio di posta elettronica non sa ancora chi è, ma una volta inseriti nome utente e password nel modulo di accesso, il servizio è in grado di verificare le credenziali, autenticarla come Jessica e farla accedere al suo account.

Sebbene la maggior parte delle persone abbia familiarità con questo tipo di autenticazione, i nomi utente e le password possono essere utilizzati per qualcosa di più della semplice autenticazione degli utenti. Gli endpoint API possono essere autenticati in questo modo, ad esempio.

Autenticazione a più fattori (MFA, Multi-Factor Authentication)

Il problema con l'autenticazione nome utente-password è che le password possono spesso essere indovinate o rubate da soggetti malintenzionati. La richiesta di ulteriori fattori di autenticazione aumenta la sicurezza per gli utenti; questo concetto è chiamato autenticazione a più fattori (MFA). Se viene utilizzata la MFA, un malintenzionato avrà bisogno di più di una password per autenticarsi falsamente come utente legittimo.

L'autenticazione a più fattori viene spesso implementata come autenticazione a due fattori. Oggi molti servizi implementano l'autenticazione a due fattori chiedendo agli utenti di dimostrare di essere in possesso di un token che è stato loro rilasciato. Esistono due tipi di token: token "soft", come un codice inviato a un utente tramite SMS o tramite un'app mobile, e token "hard", come le chiavi USB. L’autenticazione a due fattori e la MFA possono anche utilizzare fattori di autenticazione biometrici (descritti di seguito).

Certificato a chiave pubblica

L'autenticazione con chiave pubblica è leggermente più complessa di queste altre forme di autenticazione, ma se implementata correttamente può essere più sicura. Utilizza la crittografia con chiavi pubbliche per verificare se la parte autenticata possiede la chiave privata corretta.

Consulta Come funziona la crittografia con chiavi pubbliche? per scoprire come funzionano le chiavi pubbliche e le chiavi private.

L'utilizzo più comune dell'autenticazione a chiave pubblica è in Transport Layer Security (TLS), in cui viene utilizzato per autenticare un server Web. I dispositivi degli utenti eseguono questo tipo di autenticazione ogni volta che caricano un sito Web che utilizza HTTPS.

L'autenticazione a chiave pubblica viene utilizzata anche per l'autenticazione reciproca, ovvero quando entrambe le parti di una comunicazione si autenticano a vicenda anziché limitarsi a un client che autentica un server o a un servizio Web che autentica un utente. I dispositivi Internet of Things (IoT) e gli endpoint API a volte utilizzano questo tipo di autenticazione.

Autenticazione biometrica

Utilizzabile solo per l'autenticazione degli esseri umani, l'autenticazione biometrica comporta la verifica dell'identità di qualcuno controllando una delle sue caratteristiche fisiche rispetto a un database delle sue caratteristiche fisiche note. La scansione facciale o la scansione della retina sono esempi di questo tipo di autenticazione.

Cos'è l'autorizzazione (authz)?

L'autorizzazione determina cosa può vedere e fare un utente autenticato. Pensa a cosa succede quando un cliente di una banca accede al proprio conto online. Poiché la sua identità è stata autenticata, potrà vedere il saldo del proprio account e la cronologia delle transazioni, ma non sarà autorizzato a visualizzare quelli di nessun altro. Un responsabile della banca, al contrario, potrebbe essere autorizzato a visualizzare i dati finanziari di qualsiasi cliente.

Allo stesso modo, una persona può essere un legittimo dipendente di un'azienda e aver verificato la propria identità, ma ciò non significa che possa avere accesso a tutti i file e i dati di quell'azienda. Ad esempio, un dipendente esterno ai reparti delle risorse umane o della contabilità non può vedere la retribuzione di tutti.

Il livello di autorizzazione di un utente determina cosa egli è autorizzato a fare; pertanto, il termine comune per le azioni autorizzate è "autorizzazioni" o "privilegi".

Come funziona l'autorizzazione?

Le organizzazioni utilizzano una qualche forma di soluzione di autorizzazione per consentire o bloccare le azioni degli utenti. Solitamente la soluzione sa quali azioni consentire o bloccare in base all'identità dell'utente; per questo motivo l'autenticazione è strettamente interconnessa con l'autorizzazione. Esistono diversi modi per determinare le autorizzazioni utente, tra cui:

Nel controllo degli accessi basato sui ruoli (RBAC), a ogni utente vengono assegnati uno o più ruoli predeterminati e ogni ruolo viene fornito con un set specificato di autorizzazioni.

Nel controllo degli accessi basato sugli attributi (ABAC), agli utenti vengono assegnate autorizzazioni in base ai loro attributi o agli attributi dell'azione che stanno cercando di eseguire.

Nel controllo degli accessi basato su regole (abbreviato anche come RBAC), le azioni sono consentite o negate in base a una serie di regole che si applicano a tutti gli utenti, indipendentemente dal loro ruolo.

Che cos'è l'OAuth?

OAuth è uno standard tecnico per il trasferimento dell'autorizzazione da un servizio a un altro. Spesso utilizzato per servizi cloud e applicazioni Web, OAuth consente agli utenti di autenticarsi su un servizio e quindi di trasferire la propria autorizzazione a un altro servizio. Il livello di autorizzazione degli utenti è solitamente determinato da un provider di identità (IdP), che è un servizio separato.

OAuth rende possibile l'uso di servizi Single Sign-On (SSO), con i quali un utente può effettuare l'accesso una sola volta per avere accesso a tutte le sue applicazioni cloud. Senza l'uso di OAuth, le autorizzazioni di un utente dovrebbero essere configurate separatamente in ciascuna applicazione.

In che modo Cloudflare aiuta le aziende a implementare autenticazione e autorizzazione?

Cloudflare Zero Trust è una piattaforma che consente o blocca le azioni degli utenti su applicazioni in locale, self-hosted e SaaS e si integra con qualsiasi IdP per l'autenticazione. Prima di concedere l'accesso, Cloudflare Zero Trust valuta anche lo stato di sicurezza del dispositivo, una funzionalità importante per l'implementazione di un modello Zero Trust.

Scopri di più su Zero Trust.

Informazioni sulla gestione degli accessi