Skip to main content
Si vous utilisez Apigee Edge pour développer et gérer les API de vos services backend, vous pouvez utiliser Auth0 pour sécuriser l’accès à vos proxies d’API.

Prérequis

Avant de commencer, vous devrez :
  1. Disposer d’un proxy d’API Apigee Edge à sécuriser. Pour en savoir plus, consultez l’article Get Started d’Apigee.
  2. Vous inscrire pour obtenir un compte Auth0.
La création de votre proxy d’API dépasse le cadre de cet article. Nous nous concentrerons plutôt sur la sécurisation, à l’aide d’Auth0, d’un proxy d’API que vous avez déjà.

Créer une API personnalisée

D’abord, enregistrez votre proxy d’API Apigee Edge dans le Dashboard. Auth0 doit reconnaître Apigee comme une pour s’assurer que tous les émis ont la bonne audience. L’utilisateur s’authentifie auprès d’Auth0 au moyen de l’application, et celle-ci précise cette valeur d’audience pour s’assurer que le jeton d’accès possède les portées appropriées pour l’audience indiquée. Vous devrez faire ce qui suit :
  1. Indiquer un nom pour votre API (p. ex., apigee).
  2. Indiquer un identifiant pour votre API : urn:apigee:target:api
  3. Choisir un algorithme de signature : RS256 (par défaut)
Lorsque vous enregistrez votre proxy d’API Apigee Edge, Auth0 crée aussi en votre nom une application Machine to Machine (M2M) et lui attribue un nom correspondant à l’API enregistrée. Vous pouvez utiliser cette application pour effectuer des tests; elle est automatiquement configurée et autorisée à appeler votre API.

Notez les variables de l’application de test

Passez à l’application de test créée lors de l’enregistrement de votre API et notez les variables définies pendant le processus d’enregistrement de votre API et de création de l’application M2M associée. Vous en aurez besoin pour les prochaines étapes de ce tutoriel.
  1. Accédez à Auth0 Dashboard > Applications], puis cliquez sur le nom de votre application de test.
  2. Faites défiler la page vers le bas et notez les variables suivantes :
    • audience de l’API
    • domaine Auth0
    • Client ID
    • Allowed callback URL(s) : les URL vers lesquelles l’utilisateur peut être redirigé après l’authentification. Vous pouvez en spécifier plusieurs en les séparant par des virgules. (C’est généralement utile pour gérer différents environnements, chacun ayant ses propres redirections.)

Mettre en œuvre le flux Client Credentials

Vous êtes maintenant prêt à mettre en œuvre le flux Client Credentials pour demander les jetons d’accès que vous pourrez fournir à Apigee Edge. Notez que, dans ce scénario, vous utiliserez le flux Client Credentials, car vous utilisez Apigee avec les API de votre service backend, ce qui correspond à une application machine à machine (M2M); d’autres scénarios peuvent nécessiter l’utilisation d’autres flux. Pour savoir comment vous connecter et obtenir un jeton d’accès pouvant être utilisé pour envoyer une requête à Apigee Edge, consultez Effectuer une requête à l’API à l’aide du flux Client Credentials.

Valider le jeton d’accès

Une fois que vous avez demandé et reçu un jeton d’accès d’Auth0, vous pourrez l’utiliser pour appeler le proxy d’API que vous avez configuré avec Edge. Lorsque vous utilisez votre jeton d’accès, la première chose que fera Apigee Edge sera de vérifier le jeton. Les jetons d’accès Auth0 sont des (JWTs), vous pouvez donc utiliser la stratégie Verify JWT d’Apigee Edge à cette fin. Pour en savoir plus, consultez l’article d’Apigee stratégie Verify JWT signée avec l’algorithme RS256. Apigee Edge vérifiera le jeton avant toute autre chose ; si le jeton est rejeté, tout traitement s’arrêtera et Edge retournera une erreur au client.

Tests

Pour tester votre mise en œuvre, envoyez une requête HTTP POST à Apigee Edge en incluant le jeton d’accès émis par Auth0 dans l’en-tête de la requête. Pour savoir comment faire, consultez l’article d’Apigee Calling the protected API. Lorsque vous recevez une réponse positive, extrayez le jeton et examinez-le pour vérifier qu’il contient bien les claims utilisateur requis/demandés.