Aller au contenu principal

3.2. Device Authorization Response (Réponse d'autorisation d'appareil)

En réponse, le serveur d'autorisation génère un code de vérification d'appareil unique et un code d'utilisateur final qui sont valides pendant une durée limitée et les inclut dans le corps de la réponse HTTP en utilisant le format "application/json" [RFC8259] avec un code d'état 200 (OK). La réponse contient les paramètres suivants:

device_code (code d'appareil)

  • REQUIS. Le code de vérification de l'appareil.

user_code (code utilisateur)

  • REQUIS. Le code de vérification de l'utilisateur final.

verification_uri (URI de vérification)

  • REQUIS. L'URI de vérification de l'utilisateur final sur le serveur d'autorisation. L'URI doit être court et facile à mémoriser car les utilisateurs finaux seront invités à le saisir manuellement dans leur agent utilisateur.

verification_uri_complete (URI de vérification complet)

  • OPTIONNEL. Un URI de vérification qui inclut le "user_code" (ou d'autres informations ayant la même fonction que le "user_code"), conçu pour une transmission non textuelle.

expires_in (expire dans)

  • REQUIS. La durée de vie en secondes du "device_code" et du "user_code".

interval (intervalle)

  • OPTIONNEL. La durée minimale en secondes que le client DEVRAIT attendre entre les requêtes de sondage au point de terminaison de jeton. Si aucune valeur n'est fournie, les clients DOIVENT utiliser 5 comme valeur par défaut.

Par exemple:

HTTP/1.1 200 OK
Content-Type: application/json
Cache-Control: no-store

{
"device_code": "GmRhmhcxhwAzkoEqiMEg_DnyEysNkuNhszIySk9eS",
"user_code": "WDJB-MJHT",
"verification_uri": "https://example.com/device",
"verification_uri_complete":
"https://example.com/device?user_code=WDJB-MJHT",
"expires_in": 1800,
"interval": 5
}

En cas d'erreur (telle qu'un client configuré de manière invalide), le serveur d'autorisation répond de la même manière que le point de terminaison de jeton spécifié dans la Section 5.2 de [RFC6749].