Single Sign On Salesforce Developer Group

32
Single Sign On

Transcript of Single Sign On Salesforce Developer Group

Page 1: Single Sign On Salesforce Developer Group

Single Sign On

Page 2: Single Sign On Salesforce Developer Group

@juanpeCMiOS

Juanpe Catalán

http://elrincondesalesforce.blogspot.com

http://www.juanpecatalan.com

Mobile & Force.com Development Team Lead

ThinkSmart S.A

Page 3: Single Sign On Salesforce Developer Group

Problema

Page 4: Single Sign On Salesforce Developer Group

Los registros en las

aplicaciones

Page 5: Single Sign On Salesforce Developer Group

Solución

Page 8: Single Sign On Salesforce Developer Group

OAuth 2.0

Page 9: Single Sign On Salesforce Developer Group

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)

Page 11: Single Sign On Salesforce Developer Group

EsquemaWebServer

Page 12: Single Sign On Salesforce Developer Group

¿Pero cómo hacemos todo esto?

Page 13: Single Sign On Salesforce Developer Group

Implementación

Page 15: Single Sign On Salesforce Developer Group

Connected App de Salesforce

Page 16: Single Sign On Salesforce Developer Group

Connected App de Salesforce

Page 17: Single Sign On Salesforce Developer Group

Autorización

Page 18: Single Sign On Salesforce Developer Group

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:

Page 19: Single Sign On Salesforce Developer Group

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

Page 20: Single Sign On Salesforce Developer Group

Pedir token

Page 21: Single Sign On Salesforce Developer Group

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

Page 22: Single Sign On Salesforce Developer Group

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

Page 23: Single Sign On Salesforce Developer Group

Me he perdido....

Page 24: Single Sign On Salesforce Developer Group

Repasamos

Page 25: Single Sign On Salesforce Developer Group

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

Page 26: Single Sign On Salesforce Developer Group

¿Y ahora?

Page 28: Single Sign On Salesforce Developer Group

¿Todavía no?

Page 29: Single Sign On Salesforce Developer Group

Demo

Page 30: Single Sign On Salesforce Developer Group
Page 32: Single Sign On Salesforce Developer Group

¿Preguntas?Gracias