> ## Documentation Index
> Fetch the complete documentation index at: https://translations.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> Découvrez comment utiliser Auth0 pour sécuriser l’accès aux proxies d’API développés et gérés par Apigee Edge.

# Sécuriser Apigee avec Auth0

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.

<div id="prerequisites">
  ## Prérequis
</div>

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](https://docs.apigee.com/api-platform/get-started/get-started) d’Apigee.
2. [Vous inscrire](https://auth0.com/signup) 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à.

<div id="create-a-custom-api">
  ## Créer une API personnalisée
</div>

D’abord, [enregistrez votre proxy d’API Apigee Edge dans le Dashboard](/docs/fr-ca/get-started/auth0-overview/set-up-apis). Auth0 doit reconnaître Apigee comme une <Tooltip tip="Audience : identifiant unique de l’audience d’un jeton émis. Nommée aud dans un jeton, sa valeur contient l’ID d’une application (Client ID) pour un ID Token ou d’une API (API Identifier) pour un Access Token." cta="Voir le glossaire" href="/docs/fr-ca/glossary?term=audience">audience</Tooltip> pour s’assurer que tous les <Tooltip tip="Audience : identifiant unique de l’audience d’un jeton émis. Nommée aud dans un jeton, sa valeur contient l’ID d’une application (Client ID) pour un ID Token ou d’une API (API Identifier) pour un Access Token." cta="Voir le glossaire" href="/docs/fr-ca/glossary?term=Access+Tokens">jetons d’accès</Tooltip> é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.

<div id="note-variables-from-the-test-application">
  ## Notez les variables de l’application de test
</div>

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](https://manage.auth0.com/#/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.)

<div id="implement-the-client-credentials-flow">
  ## Mettre en œuvre le flux Client Credentials
</div>

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](/docs/fr-ca/get-started/authentication-and-authorization-flow/client-credentials-flow/call-your-api-using-the-client-credentials-flow).

<div id="validate-the-access-token">
  ## Valider le jeton d’accès
</div>

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](https://docs.apigee.com/api-platform/security/oauth/using-access-tokens.html), la première chose que fera Apigee Edge sera de [vérifier le jeton](https://docs.apigee.com/api-platform/security/oauth/using-access-tokens.html#addingaverifyaccesstokenpolicy).

Les jetons d’accès Auth0 sont des <Tooltip tip="JSON Web Token (JWT) : format standard de ID Token (et souvent de jeton d’accès) utilisé pour représenter de façon sécuritaire des claims entre deux parties." cta="Voir le glossaire" href="/docs/fr-ca/glossary?term=JSON+Web+Tokens">JSON Web Tokens</Tooltip> (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](https://docs.apigee.com/api-platform/reference/policies/verify-jwt-policy#verify-a-jwt-signed-with-the-rs256-algorithm).

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.

<div id="testing">
  ## Tests
</div>

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](https://docs.apigee.com/api-platform/security/oauth/oauth-20-client-credentials-grant-type.html#callingtheprotectedapi).

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.
