Mirror API – Il sistema di autorizzazione di Google Glass

Di - 10 May 2013 - in
Post image for Mirror API – Il sistema di autorizzazione di Google Glass

Ed eccoci all’ultimo della serie di articoli sulle Mirror API, nel quale analizzeremo il sitema di autenticazione di Glass.

Come abbiamo visto, il parco applicazioni di Google Glass è completamente ospitato online, e si accede alle singole applicazioni tramite richieste HTTPS. Le applicazioni hanno però la necessità di sapere con quale utente stanno comunicando, e quindi la necessità di un sistema di autenticazione ed autorizzazione.

I piú attenti di voi avranno certamente notato che l’autorizzazione avviene attraverso un token che viene passato in ogni singola richiesta, tra gli  header HTTP.

Il token viene generato e utilizzato, come di consueto, attraverso il protocollo oAuth 2.0.

Le applicazioni vanno quindi registrate presso Google, e la procedura è la stessa a cui si è abituati per le applicazioni web: raggiunta la console delle API, si crea un nuovo progetto, attivando su di esso le Google Mirror API. Nella scheda API Access, si clicca su Create a oAuth 2.0 client ID in modo da generare le chiavi pubblica e privata per l’applicazione.

Nella sezione Branding informations è obbligatorio inserire un nome per l’app, ma non è obbligatorio il logo. Le impostazioni nella sezione Client ID settings devono essere compilate come segue:

  • Application Type va impostato a Web Application
  • Facendo click su more options accanto a your site or hostname, inserire il proprio hostname in entrambi i campi che compaiono

A questo punto, nella sezione API access sono presenti entrambe le chiavi, che vanno annotate e utilizzate nella propria app.

Lato utente, al momento del primo utilizzo dell’applicazione, verrà mostrata una schermata nella quale si richiede l’accesso, specificando le autorizzazioni richieste. Se l’utente concede l’autorizzazione, si riceve un token temporaneo, l’authorization code, al quale si dovrà rispondere con il token di autorizzazione definitivo, generato dall’API.

Come per altri servizi, per le Mirror API è previsto l’offline access, una modalità di accesso che consente di compiere operazioni senza che l’utente sia presente (ad esempio operazioni programmate). Se la vostra app richiede questo tipo di accesso, verrà generato anche un refresh token, da memorizzare, per poter ottenere un nuovo token di autorizzazione quando il precedente scade e l’utente non è presente ad inviare un nuovo  authorization code.

Le credenziali ottenute in questo modo, dovranno poi essere utilizzate in tutte le richieste tanto da parte dell’applicazione quanto da parte dell’utente.

Per esempi di codice, che sono piuttosto specifici e articolati e una trattazione generica avrebbe poca utilità (e già vista per chiunque abbia messo le mani sulle API oAuth di Google), vi rimando alla documentazione delle Mirror API e, soprattutto, alla documentazione delle API oAuth e agli esempi di app Mirror.

Leave a Reply

Lorenzo Breda Articolo scritto da

Studente di Informatica a Roma, si occupa di programmazione web sopratutto lato server, e di accessibilità del web. Utilizza e ama Debian GNU/Linux, e si interessa di fisica, fumetto, trekking e fotografia (gli ultimi due possibilmente abbinati). Collabora con Googlab da aprile 2012.

Contatta l'autore

Previous post:

Next post: