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.
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>'
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_'