Da quando hanno inventato questa cosa che puoi fare a meno di avere una diversa password per ogni sito in cui devi entrare mi sento più libero e leggero. Si è vero, lasciavo che la memorizzasse il mio Firefox, ma stavo sempre con il timore che se la dimenticasse, e che poi mi toccasse di fare la trafila di ricevere una email da cliccare e metterne una nuova.
Da qualche anno a questa parte si è invece diffusa la possibilità di autenticarsi mediante un servizio esterno (Facebook, Google, o quant’altro) secondo un meccanismo di fiducia transitiva per cui se loro sanno chi sono, e sono in grado di dirlo al nuovo sito in cui sono finito, beh almeno per una volta i big data di cui faccio parte mi risparmiano la fatica di inventarmi una nuova password.
Ora è accaduto che in coda ad una presentazione svolta la scorsa settimana mi è presa la curiosità di capire come funzionasse lo SPID, scoprendo che si basa su messaggi SAML scambiati tra un Service Provider (SP, in questo caso la Pubblica Amministrazione) ed un Identity Provider (IdP, questa la lista) che una volta per tutte si è accertato della mia identità, e l’ha associata ad una password (lo SPID, appunto). Ogni volta che visito un sito della PA lei giustamente si chiede chi sono, ed interpella il mio IdP che a sua volta mi chiede lo SPID (che gli comunico), in modo che l’IdP possa confermare alla PA che si, sono proprio io.
Ora questo benedetto SAML è basato su SOAP, che è basato su XML, ed il risultato finale è che nel frattempo nel mondo del Web hanno già standardizzato qualcosa di simile ma più leggero, chiamandolo OAuth (RFC 6749), a cui hanno poi aggiunto qualche dettaglio in più dando luogo ad OpenID Connect basato su JSON, e che è quello che appunto usano ora i siti per permettere l’autenticazione mediante un servizio esterno, realizzando ciò che viene chiamata una architettura di Single Sign-On o SSO.
In pratica l’SSO funziona in modo che quando l’IdP esegue l’autenticazione memorizza nel browser dell’utente un cookie che lo attesta, e quindi ricontatta il SP per comunicargli la nostra identità (tipicamente, il nostro indirizzo email). Quando poi l’utente visita un diverso sito, se questo secondo SP fa uso dello stesso IdP quest’ultimo può leggere il cookie che aveva lasciato la volta precedente, e confermare la nostra identità senza doverci stare di nuovo a chiedere la password.
Bene, ora che mi è chiaro tutto questo… potevo lasciare il Blog dei Segnali privo di questa fantastica possibilità? Certo che no, e visto che nell’universo di WordPress non fai in tempo a pensare una cosa che trovi subito una sfilza di plugin già fatti, ho optato per il Social Login di miniOrange, che semplifica di molto il lavoro in quanto ti segue passo passo per configurare gli accordi con alcuni degli IdP di base. Ecco qua il risultato! 🙂 [miniorange_social_login] Aggiornamento Maggio 2024: il plugin di miniOrange è stato disattivato, al momento l’accesso tramite autenticazione non è più necessario per gli scopi indicati!
Hai provato a registrarti? Non è una gran ficata? Si è vero, la vera domanda diventa, ora che sei registrato, cosa puoi fare di nuovo? Beh, a parte la vocazione Community del Blog (che non è mai partita), ho pensato di porre l’autenticazione come condizione per consentire in futuro il download della edizione di cortesia del mio libro di TLC, anziché comunicarne il link via email come ora. Ma nell’attesa della futura edizione (giuro che ci sto lavorando!), sempre dopo autenticazione rendo disponibili i capitoli aggiornati in PDF. Aggiornamento Settembre 2022: l’accesso ai capitoli è divenuto libero, non occorre più autenticarsi!
Per attuare l’ultima funzionalità descritta ho però dovuto usare due ulteriori plugin: il primo è un gestore di download, che mi serve per avere in unico luogo il conteggio dei download di ciascun file, così come l’identità di chi scarica – informazioni che fino ad ora erano raccolte via email mediante un frammento di codice PHP eseguito quando il visitatore accetta la licenza Creative Commons del formato di cortesia – mentre per i capitoli fino ad ora elencati qui posso trovar traccia dei loro download solo andando a cercare nei files di log di sistema. Infine, ho adottato un plugin di Controllo di Accesso mediante il quale poter vincolare la visione di alcune pagine (in particolare, quella con i links ai download) al ruolo dell’utente autenticato.
Ecco, tutto qui… 🙂
Ah no, dimenticavo di ricordarti… ci hai già dato una mano alla realizzazione del dataset vocale per addestrare una rete neurale? Sono sufficienti pochi dei tuoi minuti, senza scomodarti dal device che stai usando ora, ed in modo… anonimo!
Photo by Erik Mclean on Unsplash
Visitor Rating: 5 Stars