Movatterモバイル変換


[0]ホーム

URL:


Aller au contenu
Wikipédial'encyclopédie libre
Rechercher

OAuth

Un article de Wikipédia, l'encyclopédie libre.

Cet article est uneébauche concernant lasécurité informatique.

Vous pouvez partager vos connaissances en l’améliorant (comment ?) selon les recommandations desprojets correspondants.
OAuth
Logiciel
Logo d'OAuth.
Informations
FonctionAutorisation
Date de création2007
RFC

2010 :5849

2012 :6749,6750

modifier

OAuth est unprotocole libre qui permet d'autoriser unsite web, un logiciel ou une application (dite « consommateur ») à utiliser l'API sécurisée d'un autre site web (dit « fournisseur ») pour le compte d'un utilisateur. OAuth n'est pas un protocole d'authentification, mais de « délégation d'autorisation ».

OAuth permet à l'utilisateur de donner au site ou logiciel « consommateur » l'accès à ses informations personnelles qu'il a stockées sur le site « fournisseur » de service ou de données, ceci tout en protégeant lepseudonyme et le mot de passe des utilisateurs. Par exemple, un site de manipulation de vidéos pourra éditer les vidéos enregistrées surDailymotion d'un utilisateur des deux sites, à sa demande.

Le protocole est créé parBlaine Cook etChris Messina (en) et sa partie principale, OAuth Core 1.0, est finalisée le.

Histoire

[modifier |modifier le code]

OAuth a commencé en, alors que Blaine Cook implémentaitOpenID pourTwitter. Avec Chris Messina, ils rencontrèrent David Recordon et Larry Halff pour discuter de la possibilité d'utiliser OpenID et l'API deTwitter pour déléguer l'authentification. Ils conclurent qu'il n'y avait pas destandard ouvert pour la délégation d'accès par API.

Un groupe de travail a été créé en pour rédiger un premier jet de proposition pour un protocole ouvert. DeWitt Clinton deGoogle fut informé du projet OAuth et affirma sa volonté de soutenir le standard. En, l'équipe rédigea les premières spécifications à l'état dedraft (brouillon). Le, la version OAuth Core 1.0 était publiée.

Le, la version OAuth Core 1.0a venait corriger unefaille de sécurité.

En, laRFC 5849 standardise OAuth 1.0a.

En, lesRFC 6749 etRFC 6750 standardisent OAuth 2.0.

Mode de fonctionnement

[modifier |modifier le code]
Workflow d’utilisation de OAuth 2.0

OAuth dans sa version 2.0[1] repose sur des échanges entre quatre acteurs. Leresource owner (utilisateur) est capable d’accorder l’accès à la ressource pour une applicationclient. L’authorization server (serveur d’autorisation) occupe le rôle central au sein du protocole, il est chargé d’authentifier leresource owner et de délivrer son autorisation sous la forme d’un jeton appeléaccess token. Leresource server quant à lui correspond au serveur où sont stockées les ressources protégées[2].

Lorsque l'application cliente souhaite demander une ressource à l'utilisateur, il envoie une requête au serveur d’autorisation composé à la fois d'une adresseURI de retour et d'unscope. Lescope définit le type et le périmètre des ressources demandées. Sur cette base, le serveur d’autorisation authentifie l'utilisateur et recueille son consentement pour la transmission de la ressource. Le serveur d’autorisation va envoyer unauthorization code au client en paramètre de l'adresse URI de retour. Lorsque l'utilisateur se connecte à cette URI complétée de l’authorization code, le client renvoie l'authorization code au serveur d’autorisation pour se voir fournir unaccess token (jeton d'accès). Enfin, le client envoie le jeton d'accès auresource server pour obtenir les ressources de l'utilisateur.

Ce mécanisme[3] de va-et-vient avec l’authorization code et jeton d'accès a plusieurs avantages :

  • il respecte une convention de type sécuritébackend[4]. La machine cliente est jugée peu sécurisée. En cas d'interception des requêtes sur cette dernière, l’authorization code ne permet pas de récupérer les ressources de l'utilisateur. L'échange du jeton d'accès se fait par un canal contrôlé par les deux services professionnels.
  • OAuth permet ainsi aux développeurs, n'ayant pas de serveur aveccertificat SSL proprement configuré, de faire appel à d'autres protocoles d'échange sécurisés queHTTPS pour l'échange du jeton d'accès.
  • les jetons d'accès[5] (comme lesJSON Web Token) peuvent être signés par le serveur d’autorisation. Ils peuvent également contenir une date de péremption.

Utilisation

[modifier |modifier le code]

Des implémentations clientes en logiciels libres du protocole OAuth2 telles que l'extensionLibreOfficeOAuth2OOo vous permettront d'accéder à des ressources distantes (via l'API Google ou l'APIMicrosoft Graph (en) et OAuth 2.0) et ce même éventuellement avec le langageBasic de LibreOffice. Cela rend très facile l'écriture et l'utilisation de requêtes HTTP supportant le protocole OAuth 2.0 dans desmacros LibreOffice.

Notes et références

[modifier |modifier le code]
  1. « OAuth 2.0 — OAuth », suroauth.net(consulté le)
  2. « Sécurisez l’accès à vos APIs avec OAuth2 », surNexworld,(consulté le)
  3. (en) NilasiniThirunavukkarasu, « Id token Vs access token », surMedium,(consulté le)
  4. (en) « TeskaLabs Blog· Understanding the Importance and Value of Backend Security », surTeskaLabs Blog(consulté le)
  5. (en) DickHardt, « The OAuth 2.0 Authorization Framework », surtools.ietf.org(consulté le)

Voir aussi

[modifier |modifier le code]

Articles connexes

[modifier |modifier le code]

Liens externes

[modifier |modifier le code]
Ce document provient de « https://fr.wikipedia.org/w/index.php?title=OAuth&oldid=231369701 ».
Catégorie :
Catégories cachées :

[8]ページ先頭

©2009-2026 Movatter.jp