La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Google Auth Mechanism Emanuel Di Nardo m.

Presentazioni simili


Presentazione sul tema: "Google Auth Mechanism Emanuel Di Nardo m."— Transcript della presentazione:

1 Google Auth Mechanism Emanuel Di Nardo emanuel.dinardo@gmail.co m

2 Quattro meccanismi di accesso: 1. OAuth 2.0 (Web e Installed) 2. OAuth 1.0 (deprecato) 3. OpenID (Web) 4. Hybrid Protocol (Web)

3 OAuth 2.0

4 Permette l’accesso ad API private Fornisce sicurezza e protezione per gli utenti L’applicazione di terze parti non può conoscere i dati inseriti in fase di login Autenticazione sicura fornita da Google Utilizzo di token di sicurezza

5 Utilizzo: Registrare l’applicazione su Google APIs Console e scegliere i servizi da utilizzare

6 Generazione OAuth ID Verranno generate chiavi univoche per l’utilizzo dei servizi

7 Effettuare il login/autorizzazione tramite il seguente url: https://accounts.google.com/o/oauth2/auth Aggiungendo i seguenti parametri con metodo HTTP GET: https://accounts.google.com/o/oauth2/auth

8 Il parametro ‘scope’ definisce a quali informazioni stiamo cercando di accedere: Lo scope è indicato nella documentazione della risorse a cui si tenta di accedere (calendar/gmail/contacts/ecc...) Es. informazioni account Informazioni sull’intero account: https://www.googleapis.com/auth/userinfo.profile Informazioni sull’indirizzo email: https://www.googleapis.com/auth/userinfo.email Possono essere inseriti entrambi!https://www.googleapis.com/auth/userinfo.profilehttps://www.googleapis.com/auth/userinfo.email

9 Gli altri parametri variano in base al tipo di applicazione che stiamo costruendo. Web server: response_type: code; redirect_uri: specificato nella generazione dell’OAuth ID; Client-side: response_type: token; redirect_uri: specificato nella generazione dell’OAuth ID; Installed app: reponse_type: code; redirect_uri: urn:ietf:wg:oauth:2.0:oob: codice restituito nel titolo della pagina html http://localhost: l’applicazione rimane in ascolto su una porta di rete, devono essere permesse le connessioni in entrata (attenzione ai firewall)http://localhost

10 Dopo l’accesso verrà mostrata una finestra di autorizzazione per l’utente

11 Nel caso di response_type: code dovrà essere generata una nuova richiesta per avere il token di accesso: Richiesta di tipo POST con parametri: https://accounts.google.com/o/oauth2/token La risposta sarà un JSON come il seguente: https://accounts.google.com/o/oauth2/token

12 Per effettuare una richiesta specifica dobbiamo consultare la documentazione della risorsa desiderata. Vengono utilizzati solitamente i metodi HTTP [GET, POST, DELETE] Es.: Richiesta informazioni utente: https://www.googleapis.com/oauth2/v1/userinfo?access_token=1/fFBGRNJru1FQd44 AzqT3Zg Richiesta Google Calendar: https://www.googleapis.com/calendar/v3/calendars/calendarId/events/eventId?access _token=1/fFBGRNJru1FQd44AzqT3Zg https://www.googleapis.com/oauth2/v1/userinfo?access_token=1/fFBGRNJru1FQd44 AzqT3Zg https://www.googleapis.com/calendar/v3/calendars/calendarId/events/eventId?access _token=1/fFBGRNJru1FQd44AzqT3Zg

13 Alla scadenza del token expires_in dobbiamo richiederne uno nuovo, utilizziamo la chiave refresh_token Nuova richiesta HTTP POST: https://accounts.google.com/o/oauth2/token https://accounts.google.com/o/oauth2/token

14 Problema di sicurezza client-side: I token devono essere validati! Aggiungere il parametro access_token con il valore appena ricevuto al seguente URL: https://www.googleapis.com/oauth2/v1/tokeninfo In risposta avremo un nuovo JSON: La verifica è valida solo se audience corrisponde al proprio client_id https://www.googleapis.com/oauth2/v1/tokeninfo

15 In sintesi:

16 Materiale disponibile al seguente indirizzo: http://goo.gl/jJzfh http://students.uniparthenope.it http://goo.gl/jJzfh http://students.uniparthenope.it


Scaricare ppt "Google Auth Mechanism Emanuel Di Nardo m."

Presentazioni simili


Annunci Google