Ajout de déclencheurs à une fonction Lambda@Edge - Amazon CloudFront

Ajout de déclencheurs à une fonction Lambda@Edge

Vous pouvez utiliser la console AWS Lambda ou Amazon CloudFront pour ajouter un déclencheur à votre fonction Lambda@Edge.

Important

Vous ne pouvez créer des déclencheurs que pour les versions numérotées de votre fonction (et non pour le $LATEST).

Lambda console
Pour ajouter des déclencheurs pour des événements CloudFront à une fonction Lambda@Edge
  1. Connectez-vous à la AWS Management Console et ouvrez la console AWS Lambda à l’adresse https://console.aws.amazon.com/lambda/.

  2. Dans la liste des régions située en haut de la page, choisissez US East (N. Virginia) (USA Est (Virginie du Nord)).

  3. Sur la page Fonctions, choisissez le nom de la fonction pour laquelle vous souhaitez ajouter des déclencheurs.

  4. Sur la page Présentation de la fonction, choisissez l’onglet Versions.

  5. Choisissez la version à laquelle vous souhaitez ajouter des déclencheurs.

    Une fois que vous avez choisi une version, le texte du bouton est remplacé par Version: $LATEST ou Version: numéro de version.

  6. Choisissez l’onglet Triggers (Déclencheurs).

  7. Choisissez Add trigger (Ajouter déclencheur).

  8. Pour Configuration du déclencheur, choisissez Sélectionner une source, entrez cloudfront, puis choisissez CloudFront.

    Note

    Si vous avez déjà créé un ou plusieurs déclencheurs, CloudFront est le service par défaut.

  9. Spécifiez les valeurs suivantes pour indiquer le moment où vous voulez que la fonction Lambda s’exécute.

    1. Distribution : choisissez la distribution que vous souhaitez ajouter au déclencheur.

    2. Comportement du cache : choisissez le comportement de cache qui spécifie les objets sur lesquels vous souhaitez exécuter la fonction.

      Note

      Si vous spécifiez * pour le comportement de cache, la fonction Lambda se déploie sur le comportement de cache par défaut.

    3. Événement CloudFront : choisissez l’événement CloudFront qui provoque l’exécution de la fonction.

    4. Inclure le corps : cochez cette case si vous souhaitez accéder au corps de la demande dans votre fonction.

    5. Confirmer le déploiement sur Lambda@Edge : cochez cette case pour qu’AWS Lambda réplique la fonction dans les Régions AWS du monde entier.

  10. Choisissez Add (Ajouter).

    La fonction commence à traiter les demandes pour les événements CloudFront spécifiés lorsque la distribution CloudFront mise à jour est déployée. Pour déterminer si une distribution a été déployée, choisissez Distributions dans le panneau de navigation. Lorsqu’une distribution a été déployée, la valeur de la colonne Statut correspondant à la distribution passe de Déploiement à la date et l’heure du déploiement.

CloudFront console
Pour ajouter des déclencheurs pour des événements CloudFront à une fonction Lambda@Edge
  1. Obtenez le nom ARN de la fonction Lambda pour laquelle vous voulez ajouter des déclencheurs :

    1. Connectez-vous à la AWS Management Console et ouvrez la console AWS Lambda à l’adresse https://console.aws.amazon.com/lambda/.

    2. Dans la liste des régions située en haut de la page, choisissez US East (N. Virginia) (USA Est (Virginie du Nord)).

    3. Dans la liste des fonctions, choisissez le nom de la fonction à laquelle vous voulez ajouter des déclencheurs.

    4. Sur la page Présentation de la fonction, choisissez l’onglet Versions et sélectionnez la version numérotée à laquelle vous voulez ajouter des déclencheurs.

    5. Choisissez le bouton Copier l’ARN pour copier l’ARN dans votre presse-papiers. L’ARN de la fonction Lambda ressemble à ceci :

      arn:aws:lambda:us-east-1:123456789012:function:TestFunction:2

      Le numéro à la fin (2 dans cet exemple) est le numéro de version de la fonction.

  2. Ouvrez la console CloudFront à l'adresse https://console.aws.amazon.com/cloudfront/v4/home.

  3. Dans la liste des distributions, choisissez l'ID de la distribution à laquelle vous voulez ajouter des déclencheurs.

  4. Choisissez l’onglet Comportements.

  5. Sélectionnez le comportement de cache auquel vous souhaitez ajouter des déclencheurs, puis choisissez Modifier.

  6. Dans Associations de fonctions, dans la liste Type de fonction, choisissez Lambda@Edge pour exécuter la fonction lors des demandes utilisateur, des réponses utilisateur, des demandes d’origine ou des réponses d’origine.

    Pour plus d’informations, consultez Choix de l’événement qui déclenche la fonction.

  7. Dans la zone de texte ARN/Nom de la fonction, collez l’ARN de la fonction Lambda que vous souhaitez exécuter lorsque l’événement choisi se produit. Il s’agit de la valeur que vous avez copiée à partir de la console Lambda.

  8. Cochez la case Inclure corps si vous souhaitez accéder au corps de la demande dans votre fonction.

    Si vous souhaitez simplement remplacer le corps de la demande, vous n'avez pas besoin de sélectionner cette option.

  9. Pour exécuter la même fonction pour plusieurs types d’événements, répétez les étapes 6 et 7.

  10. Sélectionnez Enregistrer les modifications.

  11. Pour ajouter des déclencheurs à plus de comportements de cache pour cette distribution, répétez les étapes 5 à 10.

    La fonction commence à traiter les demandes pour les événements CloudFront spécifiés lorsque la distribution CloudFront mise à jour est déployée. Pour déterminer si une distribution a été déployée, choisissez Distributions dans le panneau de navigation. Lorsqu’une distribution a été déployée, la valeur de la colonne Statut correspondant à la distribution passe de Déploiement à la date et l’heure du déploiement.