Vai al contenuto principale

Autorizzazione basata su PIN

Il flusso OAuth basato su PIN è una variante del processo OAuth a 3 passaggi, pensata per applicazioni che non possono accedere a o incorporare un browser web per reindirizzare l’utente dopo l’autorizzazione. Esempi di tali applicazioni includono programmi da riga di comando, sistemi embedded, console di gioco e alcuni tipi di app mobili. Il flusso OAuth basato su PIN viene avviato da un’app tramite request_token con oauth_callback impostato su oob. Il termine oob significa OAuth out-of-band. L’utente visita comunque X per eseguire l’accesso o autorizzare l’app, ma non verrà reindirizzato automaticamente all’applicazione dopo l’approvazione. Invece, vedrà un codice PIN numerico, con istruzioni per tornare all’applicazione e inserire questo valore.
Nota: Il callback_url nelle impostazioni della X App è comunque obbligatorio, anche quando si utilizza l’autenticazione basata su PIN.
 

Implementazione del flusso OAuth basato su PIN

Il flusso basato su PIN è implementato nello stesso modo dell’autorizzazione a 3 leg (e del Sign in with X), con le seguenti differenze:
  1. Il valore di oauth_callback deve essere impostato su oob durante la chiamata POST oauth/request_token.
  2. Dopo che l’utente viene inviato su X per autorizzare la tua App utilizzando un GET oauth/authenticate o un GET oauth/authorize, non verrà reindirizzato al tuo callback_url; vedrà invece una schermata con un PIN di circa 7 cifre generato da X, con istruzioni per inserire il PIN nella tua applicazione.
  3. L’utente inserisce questo PIN nella tua applicazione e la tua applicazione utilizza il PIN come oauth_verifier nella POST oauth/access_token per ottenere un access_token.
Nota: I PIN non sono riutilizzabili e l’access_token ottenuto deve essere utilizzato per richieste tra applicazione e utente.
I