Quelqu'un peut-il expliquer pourquoi les jetons de demande doivent être échangés contre des jetons d'accès après l'approbation de l'utilisateur? Pourquoi ne pas prétendre que le jeton de requête est le jeton d'accès une fois que l'utilisateur a un accès approuvé?demande et jetons d'accès dans oauth
Répondre
Réponse courte: Pour authentifier l'application.
Se référer à YouTube's OAuth Process Flow Diagram
OAuth est un protocole trois pattes. Dans ce cas particulier, YouTube doit authentifier deux entités différentes: a) L'utilisateur et b) L'application qui a besoin d'accss.
Désormais, une fois que l'utilisateur a accordé l'accès (étape 10 dans le diagramme), YouTube sait que «L'utilisateur x souhaite accorder à l'application Y un accès à YouTube». Mais il n'a pas encore vérifié l'application Y. Une application malveillante peut effectuer toutes les étapes jusqu'à l'étape 10 en prétendant être une application valide et connue - et une telle action doit être évitée. Dans les trois dernières étapes, l'application se connecte à YouTube en signant la demande. Une fois cela fait, YouTube peut fournir en toute sécurité un jeton d'accès à l'application.
Le système oauth vérifie le jeton de requête et vérifie si l'accès demandé est autorisé pour cet utilisateur. Il émet ensuite un jeton d'accès (valide pour une certaine période) et le signe numériquement.
La signature est importante, car c'est ce qui montre que le système accepte que le demandeur ait accès à l'accès qu'il a demandé.
Jetez un coup d'oeil à: http://hueniverse.com/oauth/ pour un guide facile à avaler à comment le tout fonctionne.
Cela ne répond pas à ma question. J'essaie de comprendre pourquoi le protocole est si compliqué avec tant d'échanges symboliques. Je peux voir le tout fonctionner avec un seul jeton de demande. – davidk01