

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Configuration d'une file d'attente Amazon SQS pour déclencher une fonction AWS Lambda
<a name="sqs-configure-lambda-function-trigger"></a>

Vous pouvez utiliser une fonction Lambda pour traiter les messages provenant d'une file d'attente Amazon SQS. Lambda interroge la file d'attente et appelle votre fonction de manière synchrone, en transmettant un lot de messages sous forme d'événement.

**Configuration du délai d'expiration de visibilité**   
Définissez le délai de visibilité de la file d'attente à au moins six fois le [délai d'expiration de la fonction](https://docs.aws.amazon.com/lambda/latest/dg/configuration-function-common.html#configuration-common-summary). Cela garantit que Lambda dispose de suffisamment de temps pour réessayer si une fonction est limitée lors du traitement d'un lot précédent.

**Utilisation d'une file d'attente de lettres mortes (DLQ)**  
Spécifiez une file d'attente de lettres mortes pour capturer les messages que la fonction Lambda ne parvient pas à traiter.

**Gestion de plusieurs files d'attente et fonctions**  
Une fonction Lambda peut traiter plusieurs files d'attente en créant une source d'événements distincte pour chaque file d'attente. Vous pouvez également associer plusieurs fonctions Lambda à la même file d'attente.

**Autorisations pour les files d'attente chiffrées**  
Si vous associez une file d'attente chiffrée à une fonction Lambda mais que Lambda n'interroge pas les messages, ajoutez l'autorisation `kms:Decrypt` à votre rôle d'exécution Lambda.

**Restrictions**  
La file d'attente et la fonction Lambda doivent être identiques. Région AWS  
Une [file d'attente chiffrée](sqs-server-side-encryption.md) qui utilise la clé par défaut (clé KMS AWS gérée pour Amazon SQS) ne peut pas appeler de fonction Lambda dans un autre. Compte AWS

Pour plus de détails sur l'implémentation, consultez la section [Utilisation AWS Lambda avec Amazon SQS](https://docs.aws.amazon.com/lambda/latest/dg/with-sqs.html) dans le Guide du *AWS Lambda développeur*.

## Conditions préalables
<a name="configure-lambda-function-trigger-prerequisites"></a>

Pour configurer les déclencheurs de la fonction Lambda, vous devez respecter les conditions requises suivantes :
+ Si vous faites appel à un utilisateur, votre rôle Amazon SQS doit inclure les autorisations suivantes :
  + `lambda:CreateEventSourceMapping`
  + `lambda:ListEventSourceMappings`
  + `lambda:ListFunctions`
+ Le rôle d'exécution Lambda doit inclure les autorisations suivantes :
  + `sqs:DeleteMessage`
  + `sqs:GetQueueAttributes`
  + `sqs:ReceiveMessage`
+ Si vous associez une file d'attente chiffrée à une fonction Lambda, ajoutez l'autorisation `kms:Decrypt` à votre rôle d'exécution Lambda.

Pour de plus amples informations, veuillez consulter [Présentation de la gestion de l'accès dans Amazon SQS](sqs-overview-of-managing-access.md).

**Pour configurer une file d'attente afin de déclencher une fonction Lambda (console)**

1. Ouvrez la console Amazon SQS à l'adresse. [https://console.aws.amazon.com/sqs/](https://console.aws.amazon.com/sqs/)

1. Dans le volet de navigation, choisissez **Files d'attente**.

1. Sur la page **Files d'attente**, choisissez la file d'attente à configurer. 

1. Sur la page de la file d'attente, choisissez l'onglet **Déclencheurs de fonction Lambda**.

1. Sur la page **Déclencheurs de fonction Lambda**, choisissez un déclencheur de fonction Lambda.

   Si la liste n'inclut pas le déclencheur de fonction Lambda dont vous avez besoin, choisissez **Configurer le déclencheur de fonction Lambda**. Saisissez l'Amazon Resource Name (ARN) de la fonction Lambda ou choisissez une ressource existante. Ensuite, choisissez **Save** (Enregistrer).

1. Choisissez **Enregistrer**. La console enregistre la configuration et affiche la page **Détails** de la file d'attente.

   Sur la page **Détails**, l'onglet **Déclencheurs de fonction Lambda** affiche la fonction Lambda et son statut. L'association de la fonction Lambda à votre file d'attente peut prendre environ 1 minute.

1. Pour vérifier le résultat de la configuration, [envoyez un message à votre file d'attente](creating-sqs-standard-queues.md#sqs-send-messages) et affichez la fonction Lambda déclenchée dans la console Lambda.