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 à :
- vérifier l'autorisation conférée au propriétaire de ressource
- vérifier l'identité du client faisant une requête
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 :
- 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 ;
- un serveur (back end, service provider) hébergeant des ressources
protégées
OAuth définit clairement le 3ᵉ rôle :
- 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 :
- une redirection par le user agent pour autoriser un client à accéder à des ressources ;
- des requêtes HTTP authentifiant le client et le propriétaire de ressource ayant autorisé la requête