Adición de desencadenadores a una función de Lambda@Edge - Amazon CloudFront

Adición de desencadenadores a una función de Lambda@Edge

Puede utilizar la consola de AWS Lambda o la consola de Amazon CloudFront para agregar un desencadenador a su función de Lambda@Edge.

importante

Solo puede crear desencadenadores para las versiones numeradas de su función (no para las $LATEST).

Lambda console
Adición de desencadenadores a una función de Lambda@Edge
  1. Inicie sesión en la AWS Management Console y abra la consola de AWS Lambda en https://console.aws.amazon.com/lambda/.

  2. En la lista Región de la parte superior de la página, elija US East (N. Virginia) (EE. UU. Este (Norte de Virginia)).

  3. En la página Functions (Funciones), elija el nombre de la función a la que desee añadir disparadores.

  4. En la página Información general de la función, elija la pestaña Versiones.

  5. Elija la versión a la que desea añadir disparadores.

    Una vez elegida una versión, el nombre del botón cambia a Version: $LATEST (Versión: $LATEST) o Version: número de versión.

  6. Elija la pestaña Triggers (Disparadores).

  7. Elija Add trigger (Añadir disparador).

  8. En Configuración del desencadenador, elija Seleccionar un origen, introduzca cloudfront y, a continuación, elija CloudFront.

    nota

    Si ya ha creado uno o varios desencadenadores, CloudFront es el servicio predeterminado.

  9. Especifique los siguientes valores para indicar cuándo desea que se ejecute la función de Lambda.

    1. Distribución: elija la distribución a la que desee agregar el desencadenador.

    2. Comportamiento de caché: elija el comportamiento de la caché que especifica los objetos en los que desea ejecutar la función.

      nota

      Si especifica * como comportamiento de la caché, la función de Lambda se implementa con el comportamiento predeterminado de la caché.

    3. Evento de CloudFront: elija el evento de CloudFront que provoca la ejecución de la función.

    4. Incluir cuerpo: marque esta casilla si desea obtener acceso al cuerpo de la solicitud en la función.

    5. Confirmación de la implementación en Lambda@Edge: seleccione esta casilla para que AWS Lambda replique la función en las Regiones de AWS de forma global.

  10. Elija Añadir.

    La función comienza a procesar solicitudes de los eventos de CloudFront especificados cuando se implementa la distribución de CloudFront actualizada. Para determinar si una distribución se ha implementado, elija Distributions (Distribuciones) en el panel de navegación. Cuando una distribución se implementa, el valor de la columna Estado de la distribución cambia de Implementando a la fecha y hora de la implementación.

CloudFront console
Adición de desencadenadores para eventos de CloudFront a una función de Lambda
  1. Identifique el ARN de la función de Lambda para la que desee añadir disparadores:

    1. Inicie sesión en la AWS Management Console y abra la consola de AWS Lambda en https://console.aws.amazon.com/lambda/.

    2. En la lista de regiones de la parte superior de la página, elija US East (N. Virginia) (EE. UU. Este (Norte de Virginia)).

    3. En la lista de funciones, seleccione el nombre de la función a la que desee añadir disparadores.

    4. En la página Información general de la función, elija la pestaña Versiones y seleccione la versión numerada a la que desea agregar desencadenadores.

    5. Elija el botón Copiar ARN para copiar el ARN en el portapapeles. El ARN de la función de Lambda tiene un aspecto similar al siguiente:

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

      El número del final (en este ejemplo es 2) es el número de versión de la función.

  2. Abra la consola de CloudFront en https://console.aws.amazon.com/cloudfront/v4/home.

  3. En la lista de distribuciones, seleccione el ID de la distribución a la que desee añadir disparadores.

  4. Elija la pestaña Behaviors (Comportamientos).

  5. Seleccione comportamiento de caché al que desee agregar desencadenadores y, a continuación, elija Editar.

  6. En Asociaciones de función, en la lista Tipo de función, elija Lambda@Edge para cuando desee que se ejecute la función: para solicitudes de lector, respuestas de lector, solicitudes de origen o respuestas de origen.

    Para obtener más información, consulte Determinación del evento de CloudFront que utilizar para desencadenar una función de Lambda@Edge.

  7. En el cuadro de texto ARN/nombre de la función, pegue el ARN de la función de Lambda que desea ejecutar cuando se produzca el evento elegido. Este es el valor que ha copiado de la consola de Lambda.

  8. Seleccione Incluir cuerpo si desea obtener acceso al cuerpo de la solicitud en la función.

    Si simplemente desea reemplazar el cuerpo de la solicitud, no necesita seleccionar esta opción.

  9. Para ejecutar la misma función con más tipos de eventos, repita los pasos 6 y 7.

  10. Elija Guardar cambios.

  11. Para agregar desencadenadores a más comportamientos de caché para esa distribución, repita los pasos del 5 al 10.

    La función comienza a procesar solicitudes de los eventos de CloudFront especificados cuando se implementa la distribución de CloudFront actualizada. Para determinar si una distribución se ha implementado, elija Distributions (Distribuciones) en el panel de navegación. Cuando una distribución se implementa, el valor de la columna Estado de la distribución cambia de Implementando a la hora y fecha de la implementación.