Crear un rol de ejecución de Lambda en IAM - AWS SDK for JavaScript

LaAWS SDK for JavaScript versión 3 (v3) es una reescritura de la versión 2 con algunas funciones nuevas y excelentes, incluida la arquitectura modular. Para obtener más información, consulte la Guía para desarrolladores de la versiónAWS SDK for JavaScript 3.

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Crear un rol de ejecución de Lambda en IAM

Este tema forma parte de un tutorial más grande que aborda el uso del AWS SDK for JavaScript con funciones de AWS Lambda. Para comenzar al principio del tutorial, consulte Tutorial: Creación y uso de funciones Lambda.

En esta tarea, se dedicará a crear un rol de IAM que la aplicación utiliza para ejecutar la función Lambda.


      Crear un rol de ejecución de IAM para Lambda

Una función Lambda requiere un rol de ejecución creado en IAM que le proporcione los permisos necesarios para ejecutarse. Para obtener más información sobre el rol de ejecución de Lambda, consulteAdministrar permisos: Uso de un rol de IAM (rol de ejecución)en laAWS LambdaGuía para desarrolladores.

Para crear el rol de ejecución de Lambda en IAM
  1. Abra lambda-role-setup.js del directorio slotassets en un editor de texto.

  2. Busque esta línea de código.

    const ROLE = "ROLE"

    Sustituya ROLE por otro nombre.

  3. Guarde los cambios y cierre el archivo.

  4. En la línea de comando, escriba lo siguiente.

    node lambda-role-setup.js

  5. Tome nota del ARN que el script devuelve. Necesitará este valor para crear la función Lambda.

Código de configuración del script

El siguiente código es el script de configuración que crea el rol de ejecución de Lambda. El script de configuración crea el JSON que define la relación de confianza necesaria para un rol de ejecución de Lambda. También crea los parámetros JSON para asociar la política administrada AWSLambdaRole. A continuación, asigna la versión de cadena del JSON a los parámetros decreateRoledel objeto de servicio de IAM.

El método createRole codifica automáticamente con la URL el JSON para crear el rol de ejecución. Cuando el nuevo rol se ha creado correctamente, el script muestra su ARN. A continuación, el guión llama alattachRolePolicydel objeto de servicio de IAM para asociar la política administrada. Una vez que la política se ha asociado correctamente, el script muestra un mensaje de confirmación.

// Load the AWS SDK for Node.js var AWS = require('aws-sdk'); // Load credentials and set Region from JSON file AWS.config.loadFromPath('./config.json'); // Create the IAM service object var iam = new AWS.IAM({apiVersion: '2010-05-08'}); var myPolicy = { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "lambda.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }; var createParams = { AssumeRolePolicyDocument: JSON.stringify(myPolicy), RoleName: "ROLE" }; var policyParams = { PolicyArn: "arn:aws:iam::policy/service-role/AWSLambdaRole", RoleName: "ROLE" }; iam.createRole(createParams, function(err, data) { if (err) { console.log(err, err.stack); // an error occurred } else { console.log("Role ARN is", data.Role.Arn); // successful response iam.attachRolePolicy(policyParams , function(err, data) { if (err) { console.log(err, err.stack); } else { console.log("AWSLambdaRole Policy attached"); } }); } });

Haga clic en next (siguiente) para continuar con el tutorial.