Actualiser le type d'octroi de jeton

Utilisez ce type d'autorisation lorsque vous voulez qu'un jeton d'actualisation soit émis avec le jeton d'accès. Le jeton d'actualisation est utilisé pour obtenir un nouveau jeton d'accès sans nécessiter la réauthentification de l'utilisateur.

Pour actualiser un jeton, le jeton d'accès doit avoir été demandé avec un type d'autorisation qui prend en charge les jetons d'actualisation, tels que le code d'autorisation, les données d'identification par mot de passe du responsable de la ressource et l'assertion. Une demande est ensuite envoyée au point d'extrémité du jeton avec le paramètre grant_type réglé à refresh_token.

Note

Ce type d'autorisation n'a aucune incidence sur les flux d'autorisation.

Sélectionnez un lien pour voir un exemple cURL qui inclut un jeton d'actualisation dans la demande :

Voir un exemple cURL qui utilise l'exemple de flux d'autorisation de type d'octroi de jeton d'actualisation

Exemple de flux d'autorisation de type d'octroi de jeton d'actualisation

Cet exemple de flux d'autorisation vous guide tout au long de l'obtention d'un nouveau jeton d'accès sans exiger que l'utilisateur s'authentifie de nouveau.

Veillez à sélectionner le type d'octroi de jeton d'actualisation lorsque vous spécifiez un type d'octroi qui prend en charge les jetons d'actualisation, par exemple Type d'octroi de code d'autorisation, Type d'octroi de données d'identification de mot de passe du responsable de la ressource ou Type d'octroi d'assertion.

Voir Actualiser le type d'octroi de jeton pour plus d'informations sur le type d'octroi de jeton d'actualisation.

Lorsqu'une application demande à un domaine d'identité d'obtenir un jeton d'accès, l'URL de la demande contient des paramètres d'interrogation qui indiquent le type d'accès demandé.

Exemple de demande à l'aide de l'en-tête d'autorisation

curl -i
   -H 'Authorization: Basic <base64Encoded clientid:secret' 
   -H 'Content-Type: application/x-www-form-urlencoded;charset=UTF-8'
   --request POST https://<domainURL>/oauth2/v1/token 
   -d 'grant_type=refresh_token&refresh_token=<refresh-token>&scope=<optional scope value>'
Exemple de demande utilisant une assertion de client JWT
   curl -i
   -H 'Content-Type: application/x-www-form-urlencoded;charset=UTF-8'
   --request POST https://<domainURL>/oauth2/v1/token 
   -d 'grant_type=refresh_token&refresh_token=<refresh-token>&client_id=<client-id>&client_assertion_type=urn%3Aietf%3Aparams%3Aoauth%3Aclient-assertion-type%3Ajwt-bearer&client_assertion=<client-assertion>&scope=<optional scope value>'
Exemple de demande à l'aide d'un client public
   curl -i 
   -H 'Content-Type: application/x-www-form-urlencoded;charset=UTF-8' 
   --request POST https://<domainURL>/oauth2/v1/token 
   -d 'grant_type=refresh_token&refresh_token=<refresh-token-value>&client_id=<client-id-value>'

Exemple de demande utilisant mTLS

Pour savoir comment obtenir secureDomainURL, voir Types d'autorisation d'accès.

curl -v \
--cert cert.crt \
--key key.key \
--cacert ca.crt \
--location '<secureDomainURL>/oauth2/v1/token' \
--header 'Authorization: Basic <base64Encoded clientid:secret>'
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'grant_type=client_credentials' \
--data-urlencode 'client_id=<client-id>' \
--data-urlencode 'scope=urn:opc:idm:_myscopes_'