OAuth

Open AUTHorization : autorisation ouverte/libre.

Motivation

Autoriser un accès HTTP à ses ressources par une partie tierce, sans donner ses identifiants (credentials).

Analyse

OAuth vise à :

OAuth définit différents rôles côté client et côté serveur, selon la version 1d11Remplacé par la OAuth 2.0 ou 2 du protocole.

Conception

Au-delà du modèle architectural client/serveur qui définit :

  1. une application cliente (front end ou consumer) qui n'est pas propriétaire de la resource mais peut agir au nom de ce dernier dès qu'il obtient un token d'autorisation ;
  2. un serveur (back end, service provider) hébergeant des ressources protégées

OAuth définit clairement le 3ᵉ rôle :

  1. propriétaire de ressource (resource owner) ou "utilisateur final" (end user) vers qui on se tournera pour lui demander s'il autorise un accès, sans pour autant dévoiler son identité.

Il définit 2 processus :

Implémentation

Debugger

Notes

Stabilisé en octobre 2007, revisé en juin 2009 (révision A).

OpenID Connect étend OAuth 2.x en ajoutant des fonctionnalités standards d'identification.