Single Sign On Salesforce Developer Group

Post on 15-Jul-2015

315 views 3 download

Tags:

Transcript of Single Sign On Salesforce Developer Group

Single Sign On

@juanpeCMiOS

Juanpe Catalán

http://elrincondesalesforce.blogspot.com

http://www.juanpecatalan.com

Mobile & Force.com Development Team Lead

ThinkSmart S.A

Problema

Los registros en las

aplicaciones

Solución

OAuth 2.0

OAuth 2.0Protocolo abierto que permite autorización segura de una API de modo estándar y simple para aplicaciones de escritorio, móviles y web. (http://es.wikipedia.org/wiki/OAuth)

EsquemaWebServer

¿Pero cómo hacemos todo esto?

Implementación

Connected App de Salesforce

Connected App de Salesforce

Autorización

Pedir autorizaciónRedirigir al usuario con una petición GET a la url proporcionada por Salesforce:

https://login.salesforce.com/services/oauth2/authorize

Parámetros:

response_typeclient_idredirect_uri

tipo de respuesta

Consumer Key de la Connected App

URL callback de la Connected App

https://login.salesforce.com/services/oauth2/authorize?response_type=code&client_id=3MVG9lKcPoNINVBIPJjdw1J9LLM82HnFVVX19KY1uA5mu0QqEWhqKpoW3svG3XHrXDiCQjK1mdgAvhCscA9GE&redirect_uri=https%3A%2F%2Fwww.mysite.com%2Fcode_callback.jsp

Ejemplo:

Una vez logeado, Salesforce contesta a la URL de callback con el código de autorización.

Ejemplo de respuesta

https://www.mysite.com/authcode_callback?code=aWekysIEeqM9PiThEfm0Cnr6MoLIfwWyRJcqOqHdF8f9INokharAS09ia7UNP6RiVScerfhc4w%3D%3D

Pedir token

Solicitar un token

https://login.salesforce.com/services/oauth2/token

Lanzar petición POST a la url proporcionada por Salesforce:

Parámetros:

grant_typeclient_idclient_secretredirect_uricode

tipo de autenticación

Consumer Key de la Connected App

Consumer Secret de la Connected App

URL callback de la Connected App

Código autorización obtenido anteriormente

Si todo ha ido bien, recibiremos una respuesta JSON con la siguiente estructura:

idscopeinstance_urlaccess_token

ID del usuario logado

Lista de claves que identifican los permisos que proporciona la Connected App

Instancia a la que se debe hacer las siguientes peticiones REST

Token necesario para solicitar información a la ORG de Salesforce

Me he perdido....

Repasamos

Crear Connected App1

El usuario nos autoriza y nos

devuelve el código

3

Genera un token y lo devuelve5

Lanzamos petición de autorización 2

Lanzamos petición de un token 4

Almacenamos la info para siguientes

llamadas 6

¿Y ahora?

¿Todavía no?

Demo

¿Preguntas?Gracias