Outh2 token

Outh2 – Il protocollo per l’autenticazione

Outh2 è un protocollo di comunicazione open, che può essere utilizzato nello sviluppo di applicazioni che necessitano di fornire un servizio di autenticazione. Outh2 è l’evoluzione del protocollo Outh ideato da Blaine Cook nel 2006, originariamente sviluppato come un’implementazione Twitter di OpenId come alternativa a competitors come  Google AuthSub, AOL OpenAuth, Yahoo BBAuth, Flickr API. Le specifiche del protocollo sono descritte dall’RFC 8252  .

Possiamo individuare quattro entità nella definizione del protocollo:

  • resource owner: il proprietario delle risorse per le quali deve essere garantito l’accesso
  • resource server: il server dove riesiedono  i dati protetti
  • client: l’applicazione che richiede l’accesso alle risorse del server. Potrebbe essere un’applicazione web, un’applicazione desktop o javascript.
  • auth server: il server che rilascia il token di accesso ai client che richiedono i dati. In molte soluzioni l’auth token può coincidere con il resource server.

Uno degli elementi fondamentali del protocollo oauth2 è il token di autenticazione.

Il token viene rilasciato dal server di autenticazione e viene utilizzato dai client per accedere alle risorse protette

Tipologie di Token

Esistono due tipologie di token:

  • auth token: viene rilasciato dal server di autenticazione dopo che il client ha inviato le credenziali. Una volta effettuata la prima autenticazione (solitamente tramite login e password) l’auth token viene inviato il client che lo potrà utilizzare nelle richieste successive. L’auth token ha una durata limitata nel tempo. Il client effettueranno le richieste utilizzando l’auth token inserendolo nell’header (o come parametro). E’ compito dello sviluppatore definire le tecniche per rendere persistente il token (es. effettuando lo store all’interno di un database)
  • refresh token: viene rilasciato contestualmente all’auth token, ma non viene inviato dal client ad ogni richiesta effettuata al server. Verrà utilizzato per richiedere un auth token, quando quest’ultimo è scaduto.

Il refresh token non sempre viene implementato

In termini di sicurezza, la comunicazione tra client e server dovrebbe avvenire tramite protocollo sicuro HTTPS. L’utilizzo di un canale sicuro risulta fondamentale dal momento che il trasferimento coinvolge dati sensibili (token ed inizialmente le credenziali di accesso). Il protocollo HTTPS non è un prerequisito fondamentale, ma è sicuramente fortemente consigliato.

 

Pubblicato da

Andrea Merlin

Laureato in informatica, diversi corsi di specializzazione legati allo Sviluppo Software e alla Computer forensics. Appassionato di nuove tecnologie, amo la programmazione, la Business Intelligence e tematiche legate alla Privacy.Sempre alla ricerca di nuove idee, stimoli … e progetti da seguire!Amo trascorrere il tempo libero in Val Borbera, un piccolo angolo del Piemonte, in provincia di Alessandria.

Un commento su “Outh2 – Il protocollo per l’autenticazione”

I commenti sono chiusi.