Portabilidad de identificadores de acceso

En esta guía se explican algunas situaciones comunes de portabilidad para que puedas crear una aplicación con la configuración que se ajuste a tus necesidades.

Uso de identificadores con distintos tipos de aplicaciones

Los identificadores de acceso son portables. Una vez que obtienes un identificador, puedes usarlo desde cualquier máquina. Si combinas interfaces web, clientes de telefonía móvil y servidores, puedes obtener una combinación de distintas configuraciones posibles. Sin embargo, cada una de estas configuraciones presenta ventajas y desventajas diferentes en cuanto a funciones y seguridad.

ConfiguraciónVentajasDesventajasNotas de seguridad

Las solicitudes de inicio de sesión y de la API se producen en un cliente web (identificador de corta duración).

Implementación sencilla.

No se puede publicar fuera de internet.

Sin acceso de larga duración.

Autenticación frecuente.

Las solicitudes de inicio de sesión y de la API se producen en un cliente web o móvil nativo (identificador de larga duración).

Autenticación menos frecuente.

No se puede publicar fuera de internet.

Las solicitudes de inicio de sesión y de la API se producen en un cliente web (identificador de larga duración después del intercambio de código).

Seguridad adicional en determinadas situaciones.

Difícil de implementar.

No se puede publicar fuera de internet.

Solo es útil en situaciones concretas.

El inicio de sesión se produce en un cliente web o de telefonía móvil nativo.

Las solicitudes de la API se producen en un servidor (con identificador de larga duración).

Se puede publicar fuera de internet.

Incorporación de funciones de seguridad disponibles con las llamadas basadas en servidor.

El cliente debe llamar al servidor para redirigir cualquier llamada mediante un proxy.

Utiliza el parámetro appsecret_proof para cualquier llamada.

El inicio de sesión se produce en un cliente web o de telefonía móvil nativo.

Las solicitudes de la API se producen en un servidor o en el cliente.

Se puede publicar fuera de internet.

Publicación controlada por el usuario desde el cliente.

Difícil de implementar.

Utiliza el parámetro appsecret_proof para cualquier llamada realizada desde el servidor.

Solicitudes de inicio de sesión y de la API en el cliente nativo o web

Esta es la configuración más sencilla, con la que las solicitudes de autenticación y de la API se producen en el cliente. Este modelo tiene tres configuraciones posibles:

  1. El cliente nativo o web autentica y utiliza el identificador devuelto de corta o larga duración para realizar llamadas.
  2. El cliente web autentica e intercambia el identificador de corta duración por uno de larga duración mediante un servidor. Este identificador se envía al cliente web, donde se usa para realizar llamadas a la API.
  3. El cliente web autentica e intercambia el identificador de corta duración por uno de larga duración mediante un servidor. El servidor envía un código al cliente. El cliente intercambia el código por un identificador de larga duración y lo usa para realizar llamadas a la API. Esta configuración se utiliza con poca frecuencia.

Proceso del cliente nativo o web

Proceso del cliente web con un identificador de larga duración

Proceso del cliente web con intercambio de código

Llamadas a la API desde el servidor e inicio de sesión en el cliente

En esta configuración común, la autenticación se produce en el cliente, pero el servidor realiza todas las llamadas a la API en nombre del cliente. El servidor puede utilizar el parámetro appsecret_proof para aumentar aún más la seguridad al realizar llamadas.

Llamadas a la API desde el servidor o el cliente e inicio de sesión en el cliente

Esta configuración es una combinación de los enfoques anteriores.

Establecer los identificadores de acceso mediante el SDK

Hay distintos modos de especificar qué identificador de acceso utilizar con una llamada a la API en nuestros SDK.