¿Cómo puedo usar una función de Lambda creada en una cuenta de AWS con un recurso personalizado de AWS CloudFormation en otra cuenta de AWS?

2 minutos de lectura
0

Quiero crear una función de AWS Lambda en una cuenta y, a continuación, invocarla desde un recurso personalizado de AWS CloudFormation en otra cuenta.

Descripción breve

Puede invocar una función de Lambda desde un recurso personalizado en una cuenta diferente solo si la función de Lambda y el recurso personalizado se encuentran en la misma región de AWS. La propiedad ServiceToken de AWS::CloudFormation::CustomResource debe estar en la misma región en la que creó su pila de AWS CloudFormation. Debe utilizar una política basada en recursos para conceder permiso a las cuentas con sus recursos personalizados para invocar su función de Lambda.

Nota: Al asociar una función de Lambda a un recurso personalizado, la función se invoca cada vez que se crea, actualiza o elimina el recurso personalizado. AWS CloudFormation llama a una API de Lambda para invocar la función y pasar todos los datos de la solicitud a la función. Por ejemplo, los datos de la solicitud incluyen el tipo de solicitud y las propiedades del recurso.

Resolución

Nota: Si recibe errores al ejecutar los comandos de la Interfaz de la línea de comandos de AWS (AWS CLI), asegúrese de que está utilizando la versión más reciente de la AWS CLI.

Para conceder a su función de Lambda acceso a su recurso personalizado desde otra cuenta (cuenta B), ejecute el comando add-permission de la AWS CLI en su cuenta principal (cuenta A).

-o-

1.    Cuando se cree una función de Lambda a través de una pila en la cuenta A, utilice el recurso AWS::Lambda::Permission para conceder el permiso a la cuenta B.

2.    En la cuenta B, inicie la pila de AWS CloudFormation que contiene su recurso personalizado.

Nota: Asegúrese de que ServiceToken haga referencia al nombre de recurso de Amazon (ARN) de la función de Lambda de la cuenta A. Incluya cualquier propiedad adicional para enviarla al recurso personalizado como entrada.

3.    Utilice los Registros de Amazon CloudWatch para confirmar que su recurso personalizado de la cuenta B invocó la función de Lambda en la cuenta A.


Información relacionada

Propiedades

Conceder a la función acceso a otras cuentas

OFICIAL DE AWS
OFICIAL DE AWSActualizada hace 3 años