Type d'octroi de jeton d'actualisation
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 Code d'autorisation, Données d'identification du mot de passe du responsable de la ressource et Assertion. Une demande est ensuite faite au point d'extrémité du jeton avec le paramètre grant_type réglé à refresh_token.
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 que l'utilisateur soit obligé de s'authentifier 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 envoie une demande à un domaine d'identité pour 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>'
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>'
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_'