Skip to main content
Pour utiliser la rotation des , vous utiliserez le Auth0 SPA SDK. Le Auth0 SPA SDK gère pour vous le stockage des jetons, la gestion des sessions et d’autres détails.

Prérequis

Configurez la rotation des jetons d’actualisation pour activer l’accès hors ligne et demander le scope d’accès hors ligne dans le SDK de l’application.

Activer useRefreshTokens

Conformément aux spécifications OAuth2, lorsqu’un navigateur demande un jeton d’actualisation au /, Auth0 ne renvoie un jeton d’actualisation que si la est activée pour cette application. Utilisez l’option useRefreshTokens dans createAuth0Client, dont la valeur par défaut est false. Lorsque cette option est définie sur false, si getTokenSilently() est invoquée et qu’un nouveau est requis, le SDK tente d’obtenir un nouveau Jeton d’accès au moyen d’un iframe masqué et de prompt=none. Si vous définissez cette option sur true, le scope offline_access est automatiquement demandé lors de l’utilisation de loginWithRedirect(), loginWithPopup() et getTokenSilently(). Lorsque getTokenSilently() est invoquée et que le Jeton d’accès a expiré, le SDK tente de renouveler le jeton d’identification et jeton d’accès en appelant le point de terminaison /token à l’aide du type d’octroi refresh_token, ainsi que du Jeton d’actualisation provenant du cache. La réauthentification silencieuse s’effectue en envoyant le paramètre prompt=none dans la requête d’authentification et en utilisant un iframe masqué, à condition qu’il y ait une session utilisateur active sur le . Le SDK utilise la méthode iframe si vous avez défini useRefreshTokens sur true, mais qu’aucun Jeton d’actualisation n’est disponible dans le cache. Cela permet aux utilisateurs de migrer discrètement vers l’utilisation de jetons d’actualisation sans avoir à se reconnecter. Si l’échange échoue parce que useRefreshTokens est true, mais qu’il n’y a pas de Jeton d’actualisation dans le cache, le SDK revient à la méthode iframe (qui peut aussi échouer si les témoins tiers sont bloqués).

Stockage des jetons

Dans les SPA, les jetons d’identification (ID) et les Jetons d’accès sont obtenus auprès du serveur d’autorisation et sont généralement stockés en mémoire cache. Le renouvellement des jetons (à la suite d’une actualisation du navigateur, de limites d’éviction du cache en mémoire ou de l’expiration) est pris en charge par le SDK.

Exemple

L’exemple suivant montre comment configurer le SDK pour utiliser à la fois le stockage local et des jetons d’actualisation :

En savoir plus