• Dernière modification le: 19 August 2022

Guide de transition OAuth 2.0

Introduction

Cet article présente les étapes à suivre pour configurer les clients OAuth dans Coupa afin de passer des clés API à OAuth 2.0.

Remarque

La temporisation et la transition de la clé API affectent uniquement les intégrations client à la plateforme centrale de Coupa et n’affectent pas les applications telles que Treasury, CSO, Supply Chain Design & Planning, etc.

Comment cela fonctionne

Remarque

 Veuillez suivre les étapes suivantes pour toutes vos instances Coupa (production, test, développement, phase, etc.).

1. Vérifiez les clés API dans Coupa

  1. Connectez-vous à votre instance Coupa.
  2. Accédez à Configuration > ClésAPI .
  3. Vérifiez toutes les clés.

2. Création du client OAuth et attribution du périmètre

  1. Accédez à Configuration > Clients Oauth2/OpenID Connect (/oauth2/clients).
  2. Cliquez sur Créeret sélectionnez Identifiantsdu client dans la liste déroulanteType d'octroi.
  3. Renseignez les champs et sélectionnez les étendues (autorisations d'accès) dont le client a besoin. Notez que si vous souhaitez donner à un client l'accès à tous les points de terminaison et opérations API, vous devrez ajouter toutes les portées à ce client. 
    Écran Créer un client.
  4. Une fois le client enregistré, vous obtiendrez ses identifiants : Identifiant , Secret,Portéesoptionnelles.
    Informations du client juré renvoyées après enregistrement.

3. Test d'identification (test de connectivité utilisant un client HTTP comme Postman)

  1. À l'aide de Terminal (LINK), utilisez la ligne de commande pour exécuter un POST de boucle :
    curl -X POST -H "Content-Type: application/x-www-form-urlencoded" -d "client_id=<CLIENT_ID>&grant_type=client_credentials&scope=<SPACE_SEPARATED_LIST_OF_SCOPES>&client_secret=<CLIENT_SECRET>" https://<INSTANCE_DOMAIN>/oauth2/token
    Exemple de Curl POST.
  2. À l'aide d'un client HTTP comme Postman ou un autre client REST, configurez une connexion Client OAuth2/OIDC pour utiliser l'API Coupa.
  3. Sélectionnez POST.
  4. Définissez l'URL sur le nom d'instance où vous avez défini le client ci-dessus. Par exemple : https://{your_instance_address}/oauth2/token
  5. Définir la valeur de la clé des en-têtes pour Content-Type = application/x-www-form-urlencoded
    Exemple POST de type de contenu.
  6. Dans le corps POST, définissez les valeurs suivantes :
    1. client_id =
    2. grant_type = client_credentials
    3. scope =
    4. client_secret = secret client Coupa>
      Paramètres du corps POST.
  7. Cliquez sur Envoyer. La réponse POST a la valeur access_token qui a été générée pour autoriser les appels API dans le périmètre défini pour les prochaines 24 heures (expires_in 86 399 secondes). 
    Exemple de réponse POST.

  8. Copiez votre access_token valeur à partir du corps de réponse et utilisez-la comme valeur de Token dans les en-têtes d' autorisation pour vos appels d'API Coupa, dans le périmètre que vous avez défini pour cette connexion client. 

  9. Créez un nouvel onglet pour lancer des appels API vers GET, POST, PUT, etc. et dans la partieAutorisation du générateur de demandes, définissez le « TYPE » = OAuth 2.0.

  10. Collez la valeur en tant access_token que valeur de champ Token .
    Exemple de valeur de champ Token.

  11. Accédez à En-têtes et entrez une valeur égaleapplication/xml ou supérieure application/jsondans le champ de la clé Accepter. Vous devrez définir et définir les autres paramètres de demande en fonction de l'appel et de l'interface que vous essayez d'utiliser. Dans l'exemple, vous pouvez voir un appel API GET à l'API des factures.
    Accepter l'exemple de champ clé.

  12. Cliquez sur Envoyer. Avec cette access_token valeur définie dans l' en-tête Autorisation, vous pouvez effectuer des appels GET, PUT ou POST vers les portées du client que vous avez définies pour cette connexion.
    Exemple de demande réussie.

4. Créez un script/flux middleware pour la création de jetons et actualisez-le toutes les 20 heures

En fonction du middleware, les configurations peuvent varier. Cependant, il est important de s'assurer que toutes les intégrations utilisant les clés API Coupa sont mises à jour pour utiliser le jeton OAuth. Pour la génération et l'actualisation de ce jeton, un nouveau script/flux doit être créé pour s'assurer qu'il est mis à jour toutes les 20 heures. La plupart des cartes du middleware actualiseront automatiquement le jeton une fois la configuration terminée.

Avertissement

La modification des portées dans un client aura un impact sur le script/adaptateur de génération de jetons car ces derniers sont transmis dans la demande de génération de jetons.

Exemple de flux.

Consultez les liens de documentation ci-dessous pour connaître les différents middlewares pour configurer l'adaptateur OAuth2.0 :

5. Mettre à jour les intégrations pour utiliser le nouveau jeton généré par le script

Toutes les intégrations existantes devront adopter la connexion OAuth et utiliser le jeton généré par le nouveau script/flux. Cela peut se faire par phases, par exemple, où les intégrations de données de base sont d'abord transitionnées, puis les intégrations de données transactionnelles à un stade ultérieur.

6. Désactiver les anciennes clés API

Dans le cadre du processus de transition, veuillez désactiver les clés API existantes afin qu'elles ne soient plus utilisées après la transition vers OAuth2.0.

  1. Accédez à Configuration > ClésAPI .
  2. Éditer l'ancienne clé API.
  3. Cliquez sur Révoquer la cléAPI .

7. Ressources et informations disponibles sur le Coupa Success Portal

Webinars Coupa

Vous pouvez également utiliser les ressources suivantes pour en savoir plus :

Une partie ou la totalité de cette page peut avoir été traduite par machine. Toutes nos excuses pour les inexactitudes.

Articles associés


API Coupa Core

Notre API RESTful fournit un accès fiable pour lire, modifier ou intégrer vos données à la plateforme Coupa.

Démarrez avec l'API

Informations générales sur l'utilisation de l'API Coupa et quand vous devez envisager d'utiliser CSV.

Transition vers OAuth 2.0 et OIDC

Coupa désapprouve les API Keys héritées et nécessite l'utilisation d'OAuth 2.0 / OIDC. À partir de R34, aucune nouvelle clé API ne sera émise et les clés API ne seront plus prises en charge avec R35.

Ressources

Nous avons organisé nos points de terminaison API par type d'objet : données de référence, données transactionnelles et ressources partagées.