OAuth 2.0 101

Auteur: Judy Howell
Date De Création: 26 Juillet 2021
Date De Mise À Jour: 23 Juin 2024
Anonim
OAuth 2.0: An Overview
Vidéo: OAuth 2.0: An Overview

Contenu


À emporter:

OAuth 2.0 a été conçu pour améliorer la version originale du protocole. Selon ses détracteurs, il réussit dans certains domaines et échoue dans d'autres.

De nombreuses voitures de luxe sont livrées avec une clé de voiturier. C’est une clé spéciale que vous donnez au préposé au stationnement et, contrairement à votre clé habituelle, vous ne pourrez conduire la voiture que sur une courte distance tout en bloquant l’accès au coffre et au téléphone portable à bord. Quelles que soient les restrictions imposées par la clé de service voiturier, l’idée est très intelligente. Vous donnez à quelqu'un un accès limité à votre voiture avec une clé spéciale, tout en utilisant une autre clé pour déverrouiller tout le reste. - Le Guide officiel d'OAuth 1.0

C’est ainsi que les directives de spécification basées sur la communauté expliquaient OAuth en 2007. Et même si OAuth 2.0 est un protocole complètement nouveau, la même description reste valable - OAuth reste un moyen pour les utilisateurs d’accorder un accès tiers (et un accès limité) à leurs ressources sans partager leurs mots de passe.

Si vous êtes sur Internet régulièrement, il est probable que vous ayez rencontré un site utilisant OAuth. Après tout, les plus grands sites Web du monde, tels que Google, MySpace, Photobcuket, Yahoo, Evernote et Vimeo, utilisent ce standard d'authentification. Poursuivez votre lecture pour en savoir plus sur cette norme et sur les raisons pour lesquelles la prochaine génération, OAuth 2.0, est encore utilisée de manière relativement expérimentale.

Qu'est-ce que OAuth 2.0?

Tout d'abord, vous devez savoir ce que fait OAuth en tant que protocole: Il permet l'autorisation d'interface de programmation d'application entre deux applications Web ou de bureau. En conséquence, les sites Web peuvent partager des ressources protégées avec d'autres sites Web et services.

Par exemple, si vous jouez à Scramble avec des amis sur votre iPad, vous pouvez entrer vos informations d'identification, ce qui permet au jeu de parcourir votre liste d'amis pour voir lesquels d'entre eux jouent - et invitez d'autres personnes à les rejoindre. Vous pouvez également vous connecter avec des amis sur Google+ en fonction de ceux qui vous suivent. Ce type d’applications est pratique pour les utilisateurs, mais il s’agit de donner à un site ou à un programme un accès aux informations vous concernant sur un autre site.

OAuth 2.0 fonctionne un peu comme la première incarnation de OAuth, mais il s’agit d’un tout nouveau standard. Cela signifie qu'il n'est pas rétrocompatible avec OAuth 1.0. La version 2.0 a résolu de nombreux problèmes liés à l'OAuth d'origine et apporté des améliorations.

Tout en conservant essentiellement l'architecture de la première version, la version 2.0 a amélioré:
  • Authentification et signatures. OAuth 2.0 a facilité la mise en œuvre du protocole par un client.
  • Expérience utilisateur et autres moyens d'émettre des jetons
  • Performance, en particulier avec des sites Web et des services plus importants
Eran Hammer, qui faisait auparavant partie du groupe de travail OAuth, fournit une explication plus complète sur les nouveautés d'OAuth 2.0. Vous pouvez y accéder ici. Notez cependant que Hammer a quitté le groupe de travail en juillet 2012, invoquant des problèmes de sécurité lors de la mise en œuvre de la norme. En conséquence, même si OAuth devait être finalisé d’ici à la fin de 2010, il reste une proposition de norme (au moment de la rédaction), bien que cela fasse partie de l’API Graph. Google et Microsoft expérimentent également la prise en charge d'OAuth 2.0 dans leurs API.

Les avantages de l'utilisation d'OAuth 2.0

L'une des meilleures raisons d'utiliser OAuth est que le partage est beaucoup plus facile. Nous étions déjà habitués à télécharger des photos sur Instagram et à les envoyer automatiquement à et. En fait, c'est ce genre de facilité d'utilisation et de croisement qui continue de rendre les médias sociaux si attrayants.

Mais ce n'est pas tout. Pour les utilisateurs finaux, OAuth signifie qu'il n'est pas nécessaire de créer un autre profil. Par exemple, si vous souhaitez laisser un commentaire sur un article, vous pouvez utiliser vos informations d'identification ou pour le faire, au lieu de devoir créer un compte sur un site Web donné. C'est idéal pour les sites sur lesquels vous n'êtes généralement pas actif ou sur lesquels vous ne pouvez pas faire confiance. Il peut également être avantageux pour les sites de s'assurer que les utilisateurs ont une identité, ce qui rend moins probable le spam par commentaire.

OAuth signifie également moins de mots de passe à retenir. Il est recommandé de disposer de mots de passe différents pour différents services de site Web. Ainsi, au lieu de mémoriser un autre mot de passe pour Pinterest, il vous suffit d'utiliser votre mot de passe pour accéder au service. Pinterest, d'ailleurs, ne verra pas votre mot de passe.

Vous pouvez également limiter le nombre de ressources accessibles via votre OAuth. Par exemple, lorsque vous jouez à un jeu, vous pouvez spécifier si vous souhaitez que le jeu soit affiché sur votre mur en votre nom ou non.

Pour le développeur, OAuth 2.0 fournit un code déjà développé pour les authentifications, l'affichage des interactions sociales et l'affichage du profil de l'utilisateur. Cela signifie moins de bogues pour les développeurs et un risque moins élevé, car l’API a déjà été déboguée, testée et éprouvée. Enfin, vous aurez également moins de données à stocker sur vos propres serveurs.

Comment est venu OAuth 2.0

Il est bien évident que OAuth répond à l’appel en faveur d’une informatique sécurisée et d’une facilité d’utilisation pour différents services Web. En revanche, OAuth 2.0 est né de la nécessité de le rendre moins complexe. Mais l’idée des deux est venue d’OpenID.

OpenID est un service qui permettait aux utilisateurs de se connecter à différents services en utilisant les informations de connexion d'un autre site Web. Mais OpenID étant très limité, un groupe de personnes travaillant sur différents protocoles d'autorisation pour leurs propres sites se sont réunis. Les premières implémentations d'OAuth ont été effectuées en 2007 et la première révision a eu lieu deux ans plus tard.

OAuth 2.0 est arrivé sur les lieux en 2010. Il visait à mettre l'accent sur la simplicité client-développeur et à être plus facilement évolutif, tout en améliorant l'expérience utilisateur.

Défis à venir?

Bien que Google, Klout et d’autres grands noms mettent actuellement en œuvre OAuth 2.0, il se peut qu’il y ait encore une route cahoteuse devant ce protocole. La communauté OAuth 2.0 suscite des critiques, notamment en ce qui concerne la sécurité des protocoles (nombreux sont ceux qui pensent qu'elle est moins sécurisée que OAuth 1.0).

Selon Hammer, s'il est utilisé par un programmeur compétent et expérimenté en sécurité Web, OAuth 2.0 fonctionne. Malheureusement, seule une petite minorité de développeurs répondent à cette exigence.

De plus, les codes OAuth 2.0 ne sont pas réutilisables. Par exemple, les protocoles OAuth 2.0 utilisés par ne seraient pas facilement utilisables par un autre site. De plus, le nouveau protocole est en réalité beaucoup plus complexe que l’original.

Mais pour beaucoup de gens, le véritable atout, c’est qu’OAuth 2.0 ne semble offrir aucun avantage ni aucune amélioration par rapport à la version 1.0. Hammer écrit que si vous implémentez avec succès la version 1.0, il n'y a aucune raison de passer à la version 2.0.

OAuth 2.0, cependant, est toujours très vivant. S'il répond aux critiques et aux problèmes soulevés, il peut toujours trouver sa place comme protocole très puissant. Au moment de la rédaction de ce rapport, toutefois, la version 1.0 était toujours considérée comme la version officielle, stable et testée d’OAuth. Néanmoins, pour les développeurs qui souhaitent travailler avec de grands noms du monde en ligne, la mise en œuvre sécurisée de ce protocole peut devenir un ensemble de compétences clé dans un avenir proche.