Refresh token
Utilité
Le mécanisme de Refresh token permet au Fournisseur de Service (FS) de pouvoir récupérer des informations utilisateurs auprès de ProConnect (PC) après l'expiration de l'access_token initialement émis lors de la connexion de l'utilisateur.
Mécanisme
- Lors de l'appel au
token_endpoint(cf. 2.3.3. Génération du token), PC renvoie entre autres le champrefresh_token. - Le FS stocke le
refresh_tokendans la session utilisateur côté serveur (afin d'éviter le vol derefresh_tokenpar injection XSS par exemple). - Lorsque le FS souhaite récupérer des informations utilisateurs, il se retrouve dans une des trois situations suivantes :
- l'
access_tokenn'a pas encore expiré (temps écoulé depuis la génération du token < 1 heure): il peut appeler leuserinfo_endpointà l'aide de l'access_token(cf. 2.3.6. Récupération des user info) - l'
access_tokena expiré, mais pas le refresh_token (temps écoulé depuis la génération du token >= 1 heure mais < 2 heures) : il peut appeler letoken_endpointen POST avec les paramètres suivants pour récupérer un nouvelaccess_tokenet un nouveaurefresh_token(comme spécifié par la RFC - section Refresh Tokens) :client_id=...client_secret=...grant_type=refresh_tokenrefresh_token=...scopes=...
- le
refresh_tokena expiré (temps écoulé depuis la génération du token >= 2 heures) : l'utilisateur doit effectuer une nouvelle connexion