Paramètres de demande de l’API OAuth

  • Rversion finale: Yokohama
  • Mis à jour 30 janv. 2025
  • 2 minutes de lecture
  • Découvrez les paramètres de demande d’API OAuth utilisés par les demandes de jeton d’accès.

    Remarque :
    Le type de contenu de l’API OAuth doit être application/x-www-form-urlencoded. Un type de contenu application/json entraîne une erreur non spécifiée.
    Tableau 1. Paramètres de demande de jeton d’accès
    Paramètre de demande Description
    grant_type [Obligatoire] Type d’informations d’identification autorisant la demande d’un jeton d’accès. Ce paramètre doit avoir l’une des valeurs suivantes :
    • mot de passe : ensemble des informations d’identification de l’utilisateur pour autoriser la demande de jeton d’accès. Spécifiez les informations d’identification de l’utilisateur dans les paramètres nom d’utilisateur et mot de passe.
    • refresh_token : un jeton d’actualisation existant autorise la demande de jeton d’accès. Spécifiez le jeton d’actualisation dans le paramètre refresh_token.
    client_id [Obligatoire] ID unique généré automatiquement de l’application cliente demandant le jeton d’accès.
    client_secret [Obligatoire] Chaîne secrète partagée que l’instance et l’application OAuth utilisent pour autoriser les communications l’une avec l’autre.
    nom d'utilisateur Nom du compte utilisateur qui autorise la demande de jeton d’accès. Ce paramètre est requis pour les demandes de jeton d’accès avec une grant_type de mot de passe.
    mot de passe Mot de passe du compte utilisateur qui autorise la demande de jeton d’accès. Ce paramètre est requis pour les demandes de jeton d’accès avec une grant_type de mot de passe.
    refresh_token Jeton d’actualisation existant qui autorise la demande de jeton d’accès. Ce paramètre est requis pour les demandes de jeton d’accès avec un grant_type de refresh_token.

    Demandes utilisant les informations d’identification de l’utilisateur

    L’instance exige que les clients fournissent des informations d’identification de connexion lors de l’autorisation initiale du client ou lors de l’autorisation de la création d’un jeton d’actualisation. Ce type de demande renvoie toujours deux jetons :

    • Un jeton d’accès
    • Un jeton d’actualisation

    L’instance vérifie que l’utilisateur est actif, qu’il n’est pas actuellement verrouillé et qu’il dispose d’une session interactive. Si l’une de ces conditions est fausse, l’instance ne produit pas de jeton d’accès. Les demandes d’accès effectuées dans le délai d’expiration du jeton d’accès renvoient toujours le jeton d’accès actuel.

    Remarque :
    Ce type d’octroi d’autorisation s’appuie sur le chiffrement TLS pour protéger les informations d’identification de l’utilisateur pendant la transmission.

    L’exemple suivant illustre la demande d’un jeton d’accès avec un ensemble d’informations d’identification d’utilisateur (des espaces ont été ajoutés pour améliorer la lisibilité).

    
    $ curl -d"grant_type=password&client_id=be3aeb583ace210011c15b24a43e25d8
    &client_secret=client_password
    &username=admin&password=admin" 
    https://instancename.service-now.com/oauth_token.do

    Demandes utilisant un jeton d’actualisation

    L’instance peut utiliser un jeton d’actualisation existant pour créer un nouveau jeton d’accès. Ce type de demande renvoie uniquement un jeton d’accès. L’instance confirme que le jeton d’actualisation n’a pas expiré avant de générer un nouveau jeton d’accès. Les demandes d’accès effectuées pendant le délai d’expiration du jeton d’actualisation renvoient toujours le jeton d’actualisation actuel. La transmission des jetons de rafraîchissement est généralement plus sécurisée que la transmission des informations d’identification de l’utilisateur. L’exemple suivant illustre la demande d’un jeton d’accès avec un jeton de rafraîchissement existant (des espaces ont été ajoutés pour améliorer la lisibilité).

    
    $ curl -d"grant_type=refresh_token&client_id=be3aeb583ace210011c15b24a43e25d8
    &client_secret=client_password
    &refresh_token=w599voG89897rGVDmdp12WA681r9E5948c1CJTPi8g4HGc4NWaz62k6k1K0FMxHW40H8yOO3Hoe" 
    https://instancename.service-now.com/oauth_token.do