Saltar al contenido principal

Autorización basada en PIN

El flujo de OAuth basado en PIN es una versión del proceso de 3-legged OAuth y está pensado para aplicaciones que no pueden acceder ni integrar un navegador web para redirigir al usuario después de la autorización. Ejemplos de este tipo de aplicaciones incluyen herramientas de línea de comandos, sistemas integrados, consolas de videojuegos y ciertos tipos de apps móviles. El flujo de OAuth basado en PIN lo inicia una App en el request_token con oauth_callback establecido en oob. El término oob significa OAuth fuera de banda. El usuario igual visita X para iniciar sesión o autorizar la App, pero no será redirigido automáticamente a la aplicación al aprobar el acceso. En su lugar, verá un código PIN numérico, con instrucciones para volver a la aplicación e introducir este valor.
Nota: El callback_url dentro de la configuración de la App de X sigue siendo obligatorio, incluso cuando se utiliza la autenticación basada en PIN.
 

Implementación del flujo de OAuth basado en PIN

El flujo basado en PIN se implementa del mismo modo que la autorización de 3 participantes (y Iniciar sesión con X), con las siguientes diferencias:
  1. El valor de oauth_callback debe establecerse en oob durante la llamada POST oauth/request_token.
  2. Después de enviar al usuario a X para autorizar tu App mediante GET oauth/authenticate o GET oauth/authorize, no será redirigido a tu callback_url; en su lugar, verá una pantalla con un PIN de ~7 dígitos generado por X con instrucciones para introducir el PIN en tu aplicación.
  3. El usuario introduce este PIN en tu aplicación, y tu aplicación utiliza el PIN como oauth_verifier en POST oauth/access_token para obtener un access_token.
Nota: Los PIN no son reutilizables y el access_token obtenido debe usarse para solicitudes de aplicación-usuario.