Le flux OAuth basé sur un code PIN est une variante du processus OAuth à 3 volets et est destiné aux applications qui ne peuvent pas accéder à un navigateur web ou l’intégrer pour rediriger l’utilisateur après l’autorisation. Parmi ces applications, on peut citer les applications en ligne de commande, les systèmes embarqués, les consoles de jeux et certains types d’applications mobiles. Le flux OAuth basé sur un code PIN est initié par une application via une requêteDocumentation Index
Fetch the complete documentation index at: https://generaltranslation.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
request_token avec oauth_callback défini à oob. Le terme oob signifie OAuth hors bande (out-of-band OAuth). L’utilisateur se rend toujours sur X pour se connecter ou autoriser l’application, mais il ne sera pas automatiquement redirigé vers celle‑ci après avoir approuvé l’accès. À la place, il verra un code PIN composé de chiffres, ainsi que des instructions lui indiquant de revenir à l’application et de saisir cette valeur.
Remarque : Le paramètre
callback_url dans les paramètres de l’application X reste obligatoire, même lorsque vous utilisez l’authentification basée sur un code PIN.Implémentation du flux OAuth basé sur un code PIN
-
La valeur de
oauth_callbackdoit être définie surooblors de l’appel POST oauth/request_token. -
Après que l’utilisateur a été redirigé vers X pour autoriser votre application à l’aide d’un GET oauth/authenticate ou d’une URL GET oauth/authorize, il ne sera pas redirigé vers votre
callback_url. À la place, il verra un écran affichant un code PIN d’environ 7 chiffres généré par X, avec des instructions lui demandant de saisir ce code PIN dans votre application. -
L’utilisateur saisit ce code PIN dans votre application, et votre application utilise ce code PIN comme
oauth_verifierdans l’appel POST oauth/access_token pour obtenir unaccess_token.
Remarque : les codes PIN ne sont pas réutilisables, et le
access_token obtenu doit être utilisé pour les requêtes effectuées par l’application pour le compte de l’utilisateur.