Passer au contenu principal

Autorisation par code PIN

Le flux OAuth par code PIN est une variante du processus OAuth à 3 volets, destiné aux applications qui ne peuvent pas accéder à un navigateur web ni en intégrer un pour rediriger l’utilisateur après l’autorisation. Par exemple : applications en ligne de commande, systèmes embarqués, consoles de jeu et certains types d’applications mobiles. Le flux OAuth par code PIN est initié par une App dans la requête request_token avec oauth_callback défini sur oob. Le terme oob signifie OAuth hors bande. L’utilisateur se rend toujours sur X pour se connecter ou autoriser l’App, mais il ne sera pas redirigé automatiquement vers l’application après avoir accordé l’accès. À la place, un code PIN numérique s’affiche, avec des instructions pour revenir dans l’application et saisir cette valeur.
Remarque : Le callback_url dans les paramètres de la X App est toujours requis, même lors de l’utilisation de l’authentification par code PIN.
 

Mise en œuvre du flux OAuth basé sur un code PIN

Le flux basé sur un code PIN s’implémente de la même manière que l’autorisation à 3 volets (et Se connecter avec X), à ceci près :
  1. La valeur de oauth_callback doit être définie sur oob lors de l’appel POST oauth/request_token.
  2. Après que l’utilisateur a été redirigé vers X pour autoriser votre App via GET oauth/authenticate ou GET oauth/authorize, il ne sera pas renvoyé vers votre callback_url. À la place, un écran affichera un code PIN d’environ 7 chiffres généré par X, accompagné d’instructions lui demandant de saisir ce code dans votre application.
  3. L’utilisateur saisit ce code PIN dans votre application, qui l’utilise comme oauth_verifier dans POST oauth/access_token pour obtenir un access_token.
Remarque : Les codes PIN ne sont pas réutilisables et l’access_token obtenu doit être utilisé pour les requêtes App-utilisateur.
I