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.
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ón | Ventajas | Desventajas | Notas 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 |
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 |
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:
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.
Esta configuración es una combinación de los enfoques anteriores.
Hay distintos modos de especificar qué identificador de acceso utilizar con una llamada a la API en nuestros SDK.
setCurrentAccessToken
del SDK de Facebook para Android tiene el parámetro accessToken
.setCurrentAccessToken
del SDK de Facebook para iOS tiene el parámetro token
.FB.api()
del SDK de Facebook para JavaScript tiene el parámetro access_token
.