autenticación vs autorización -¿cómo trabajar con el protocolo oauth?
TRANSCRIPT
Meli Experience - Julio 2016
Autenticación
Autorizaciónvs
Nicolás Agustín LegrestiIng. En Informáticawww.facebook.com/nlegresti@nlegresti
This is our visionBuilding the foundation to Build a 3B Company by FY20
AgendaAutenticación . ¿Que es? - Métodos de Autenticación
Recursos . Públicos y Privados
Autorización . ¿Que es? - Protocolo OAuth
Crear una aplicación . Crear una app en Mercadolibre
Flujo de autorización . Client-Side - Server-Side
Ejemplo en código. Server-Side
Preguntas
Autenticación
Autorización
Autenticación
Autenticación
Autenticación
Recursos
Recursos Privados
Recursos Públicosvs
Recursos públicoshttp://perfil.mercadolibre.com.ar/NLEGRESTI?role=buyer
https://api.mercadolibre.com/users/126610658
https://api.mercadolibre.com/users/126610658
https://api.mercadolibre.com/users/126610658
https://api.mercadolibre.com/users/126610658
Recursos privados
Recursos privados
https://api.mercadolibre.com/users/126610658?
access_token=APP_USR...
Autorización
Protocolo OAuth
Protocolo OAuth
Protocolo OAuth
Protocolo OAuth
1.0a
2.0
Protocolo OAuth
Protocolo OAuth
Protocolo OAuthGrant Types
● Authorization Code (server-side)
● Implicit (client-side)● Password Credentials● Client Credentials
Yendo a la acción
Crear una aplicaciónhttp://applications.mercadolibre.com
Crear una aplicaciónhttp://
applications.mercadolibre.com
Crear una aplicación
http://applications.mercadolibre.co
m
Crear una aplicaciónSCOPE READ
curl -X GEThttps://api.mercadolibre.com/
users/126610658?access_token=APP_USR...
Crear una aplicaciónSCOPE WRITE
curl -X POST -H "Content-Type: application/json" -d'{ "title": "Item De Testeo, Por Favor No Ofertar", "buying_mode":"buy_it_now", "listing_type_id":"bronze", "condition":"new", "description": "Lorem ipsum dolor sit amet, an est odio timeam quaerendum.", "video_id": "YOUTUBE_ID_HERE", "warranty": "12 months", "pictures":[ {"source":"http://..."}, {"source":"http://..."}]}'https://api.mercadolibre.com/items?access_token=$ACCESS_TOKEN
Crear una aplicaciónSCOPE OFFLINE_ACCESS
Developer Client
Crear una aplicación
ACCESS_TOKEN
APP_USR-7961691315322584-051110-b3e00dfc1817db72bd7bf3f8bdb9e3f2__F_B__-181345005
Flujo de Autorización
Flujo de AutorizaciónAuthorization
CodeImplicit
Client Side Server Side
Flujo de AutorizaciónClient Side
Flujo de AutorizaciónServer Side
Ejemplo en Código
OAuth.classMercadolibte Application
OAuth.class
OAuth.class
https://auth.mercadolibre.com.ar/authorization?response_type=code&client_id=439461806559899&redirect_
uri=https://myServer.com/authorization_listen
Flujo de AutorizaciónServer Side
Flujo de AutorizaciónServer Side
https://myServer.com/authorization_listen
TG-57a8967ee4b0cd959e27c4f8-126610658
Flujo de AutorizaciónServer Side
https://myServer.com/authorization_listen
ACCESS_TOKENAPP_USR-439461806559899-080810-
34ffc63b6bc64bea32f06cd6f462ff89__B_L__-126610658
https://myServer.com/authorization_listen
REFRESH_TOKENTG-57a89684e4b05ed03e00c4d2-126610658
Flujo de AutorizaciónServer Side
?¿