> ## 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.

> Comment sécuriser le tutoriel API Gateway à l’aide de Cognito plutôt qu’avec des rôles IAM et des politiques.

# Sécuriser AWS API Gateway avec Cognito

Au lieu d’utiliser des rôles IAM et des politiques pour sécuriser votre API, vous pouvez utiliser les User Pools d’Amazon Cognito.

Veuillez [créer les User Pools Amazon Cognito appropriés](http://docs.aws.amazon.com/cognito/latest/developerguide/setting-up-cognito-user-identity-pools.html) avant de commencer ce tutoriel.

<div id="integrate-the-cognito-user-pool-with-the-api-gateway-api">
  ## Intégrer le Cognito User Pool à l’API API Gateway
</div>

Accédez à la [Amazon API Gateway Console](https://console.aws.amazon.com/apigateway). À l’aide de la barre de navigation de gauche, sélectionnez l’API **SecurePets**.

Ensuite, sélectionnez **Authorizers** pour l’API **SecurePets**.

Dans la colonne **Authorizers**, près du centre de l’écran, choisissez **Create** et indiquez que vous créez un **Cognito User Pool Authorizer**.

Pour configurer votre authorizer :

1. Choisissez la **Cognito region** dans laquelle vous avez créé votre User Pool.
2. Personnalisez le champ **Authorizer name**, si vous le souhaitez (il sera automatiquement rempli avec le nom du User Pool sélectionné; vous pouvez donc le laisser tel quel).
3. Personnalisez le champ **Identity token source**. Par défaut, ce champ est défini sur `method.request.header.Authorization`, ce qui définit à `Authorization` le nom de l’en-tête de requête entrant qui contient le token d’identité de l’appelant de l’API.
4. Si vous le souhaitez, ajoutez une expression régulière au champ **App client ID regex** pour valider les ID client associés au User Pool.

Lorsque vous avez terminé de configurer votre authorizer, cliquez sur **Create** pour intégrer le User Pool à votre API.

<div id="enable-the-user-pool-authorizer-on-methods">
  ## Activer le User Pool authorizer sur les méthodes
</div>

Pour chaque méthode pour laquelle vous voulez que le User Pool agisse comme authorizer, vous devez activer cette option pour la méthode en question.

Pour activer le User Pool authorizer sur la méthode `GET` :

1. Après avoir sélectionné l’API SecurePets, sélectionnez la méthode `GET` indiquée sous `/pets`.
2. Cliquez sur **Method Request**.
3. Dans Authorization Settings, cliquez sur l’**icône de modification** à côté du champ Authorization.
4. Dans la liste, choisissez le Cognito User Pool authorizer approprié. Cliquez sur l’**icône en forme de coche** pour enregistrer votre sélection.

Répétez ce processus pour toute autre méthode pour laquelle vous voulez que le Cognito User Pool agisse comme authorizer (`GET` et `PURCHASE` pour `/pets`, ainsi que `POST` pour `/purchase`).
