Passer au contenu principal
Si vous utilisez Apigee Edge pour développer et gérer les API de vos services dorsaux, vous pouvez utiliser Auth0 pour sécuriser l’accès à vos proxys d’API.

Prérequis

Avant de commencer, vous devez :
  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 créer un compte Auth0.
Le processus de création de votre proxy d’API sort du cadre de cet article. Nous nous concentrerons plutôt sur la sécurisation d’un proxy d’API existant à l’aide d’Auth0.

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 afin de s’assurer que tous les émis ont la bonne audience. L’utilisateur s’authentifie auprès d’Auth0 par l’intermédiaire de l’application, et l’application précise cette valeur d’audience pour s’assurer que le Jeton d’accès possède les scopes appropriés pour l’audience fournie. Vous devrez faire ce qui suit :
  1. Indiquez un nom pour votre API (p. ex., apigee).
  2. Indiquez un identifiant pour votre API : urn:apigee:target:api
  3. Choisissez un algorithme de signature : RS256 (par défaut)
Lorsque vous enregistrez votre proxy d’API Apigee Edge, Auth0 crée également 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 l’enregistrement de votre API et la 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
    • ID client
    • URL(s) de rappel autorisée(s) : URL vers lesquelles l’utilisateur peut être redirigé après l’authentification. Vous pouvez en indiquer plusieurs en les séparant par des virgules. (Cela permet généralement de gérer différents environnements, chacun ayant besoin de ses propres redirections.)

Implémenter le flux Client Credentials

Vous êtes maintenant prêt à implémenter le flux Client Credentials pour demander les jetons d’accès que vous pouvez fournir à Apigee Edge. Notez que, dans ce scénario, vous utiliserez le flux Client Credentials parce que 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 authentifier et obtenir un jeton d’accès pouvant être utilisé pour appeler Apigee Edge, consultez Appeler une 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 pouvez 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 qu’Apigee Edge fait est de vérifier le jeton. Les jetons d’accès Auth0 sont des (JWT). Vous pouvez donc tirer parti de la stratégie Verify JWT d’Apigee Edge pour le faire. Pour en savoir plus, consultez l’article d’Apigee Verify JWT policy signed with the RS256 algorithm. Apigee Edge vérifiera le jeton avant toute autre chose ; si le jeton est rejeté, tout le traitement s’arrêtera et Edge renverra une erreur à l’application.

Test

Pour tester votre implémentation, effectuez une requête HTTP POST à Apigee Edge en incluant dans l’en-tête de l’appel le Jeton d’accès émis par Auth0. Pour savoir comment faire, consultez l’article d’Apigee Calling the protected API. Lorsque vous recevez une réponse réussie, extrayez le jeton et examinez-le pour vérifier que les revendications utilisateur requises ou demandées y figurent.