Question

L'autre minute, j'ai lu un article sur le protocole OAuth.Il décrit en particulier les jetons échangées entre le client et le fournisseur de services au cours d'une série de demandes.

L'article mentionne également que OAuth des gains importants en popularité dans RESTful Api comme couche d'autorisation.Ce que j'ai compris, le REPOS doit être gardé complètement apatrides.

La question:N'est-il pas répété jeton d'échange de torpille de REPOS "apatrides" principe?À mon humble avis, les jetons peuvent être considérés comme une sorte d'ID de session, ne peuvent-ils pas?

Était-ce utile?

La solution

jetons OAuth sont explicitement un identifiant de session, l'interaction ne sont pas sans état entre les requêtes dans le protocole de négociation jeton OAuth que les demandes doivent être effectuées dans une séquence spécifique, et ils ne nécessitent le stockage par client sur le serveur que vous devez suivre des choses comme quand ils ont été émis. Alors oui, OAuth ne viole les principes stricts d'une architecture RESTful.

Malheureusement, il y a le monde réel TM faire face où nous devons faire des choses comme permettent aux applications de authentifient au nom des individus sans demander leur mot de passe, ce qui OAuth fait assez bien. Il serait impossible de mettre en œuvre un système d'authentification sécurisée de la même sans ce genre d'état. En effet, l'un des changements requis par OAuth (1.0a) était d'ajouter plus Etat au protocole de négociation jeton pour atténuer un risque de sécurité.

Alors, est-il torpille principe sans état de repos? Oui. Est-ce important? Non, sauf si vous habitez dans une tour d'ivoire: -)

Autres conseils

L'authentification est un état qui doit être suivi en quelque sorte lorsque l'on traite dans les interactions sur le web.En fin de compte, si votre application est reposante ou pas, le serveur doit être en mesure de suivre chaque utilisateurs "état authentifié" et, malheureusement, qui nécessite une forme de contournement de la sous-jacentes apatrides nature de HTTP, et tous autres transports/techniques (comme le RESTE) sur le dessus de cela.

Donc à développer toutes sortes de authentifié application, principe de l'état doit être chaussure cornes en quelque part, et si cela se trouve à être OAuth sur le dessus de REPOS, c'est comment il doit être!

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top