Administración de las claves de acceso de 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.

Administración de las claves de acceso de IAM

JavaScript code example that applies to Node.js execution

Este ejemplo de código de Node.js muestra:

  • Cómo administrar las claves de acceso de sus usuarios.

El escenario

Los usuarios necesitan sus propias claves de acceso para realizar llamadas programáticas aAWSdel SDK paraJavaScript. Para atender esta necesidad, puede crear, modificar, ver o rotar claves de acceso (ID de clave de acceso y claves de acceso secretas) de los usuarios de IAM. De forma predeterminada, cuando crea una clave de acceso, su estado es Active, lo que significa que el usuario puede utilizar la clave de acceso para las llamadas a la API.

En este ejemplo se van a utilizar una serie de módulos de Node.js para administrar claves de acceso en IAM. Los módulos Node.js utilizan el SDK paraJavaScriptpara administrar claves de acceso de IAM utilizando estos métodos de laAWS.IAMclase del cliente:

Para obtener más información acerca de las claves de acceso de IAM, consulte.Claves de accesoen laIAM User Guide.

Tareas previas necesarias

Para configurar y ejecutar este ejemplo, primero debe completar estas tareas:

Creación de claves de acceso para un usuario

Cree un módulo de Node.js con el nombre de archivo iam_createaccesskeys.js. Asegúrese de configurar el SDK tal y como se ha indicado anteriormente. Para acceder a IAM, cree unAWS.IAMobjeto de servicio. Cree un objeto JSON que contenga los parámetros necesarios para crear nuevas claves de acceso y que incluya nombre del usuario de IAM. Llame al método createAccessKey del objeto de servicio de AWS.IAM.

// Load the AWS SDK for Node.js var AWS = require('aws-sdk'); // Set the region AWS.config.update({region: 'REGION'}); // Create the IAM service object var iam = new AWS.IAM({apiVersion: '2010-05-08'}); iam.createAccessKey({UserName: 'IAM_USER_NAME'}, function(err, data) { if (err) { console.log("Error", err); } else { console.log("Success", data.AccessKey); } });

Para ejecutar el ejemplo, escriba lo siguiente en la línea de comandos. Asegúrese de transferir los datos devueltos a un archivo de texto para no perder la clave secreta, que solo puede proporcionarse una vez.

node iam_createaccesskeys.js > newuserkeys.txt

Este código de muestra se puede encontraraquí enGitHub.

Generación de una lista de claves de acceso de un usuario

Cree un módulo de Node.js con el nombre de archivo iam_listaccesskeys.js. Asegúrese de configurar el SDK tal y como se ha indicado anteriormente. Para acceder a IAM, cree unAWS.IAMobjeto de servicio. Cree un objeto JSON que contenga los parámetros necesarios para recuperar las claves de acceso del usuario y que incluya el nombre del usuario de IAM y, de forma opcional, el número máximo de pares de claves de acceso que desee que aparezcan en la lista. Llame al método listAccessKeys del objeto de servicio de AWS.IAM.

// Load the AWS SDK for Node.js var AWS = require('aws-sdk'); // Set the region AWS.config.update({region: 'REGION'}); // Create the IAM service object var iam = new AWS.IAM({apiVersion: '2010-05-08'}); var params = { MaxItems: 5, UserName: 'IAM_USER_NAME' }; iam.listAccessKeys(params, function(err, data) { if (err) { console.log("Error", err); } else { console.log("Success", data); } });

Para ejecutar el ejemplo, escriba lo siguiente en la línea de comandos.

node iam_listaccesskeys.js

Este código de muestra se puede encontrar.aquí enGitHub.

Obtención de información del último uso de las claves de acceso

Cree un módulo de Node.js con el nombre de archivo iam_accesskeylastused.js. Asegúrese de configurar el SDK tal y como se ha indicado anteriormente. Para acceder a IAM, cree unAWS.IAMobjeto de servicio. Cree un objeto JSON que contenga los parámetros necesarios para crear nuevas claves de acceso, que es el ID de clave de acceso cuya información sobre la última vez que se usó quiere obtener. Llame al método getAccessKeyLastUsed del objeto de servicio de AWS.IAM.

// Load the AWS SDK for Node.js var AWS = require('aws-sdk'); // Set the region AWS.config.update({region: 'REGION'}); // Create the IAM service object var iam = new AWS.IAM({apiVersion: '2010-05-08'}); iam.getAccessKeyLastUsed({AccessKeyId: 'ACCESS_KEY_ID'}, function(err, data) { if (err) { console.log("Error", err); } else { console.log("Success", data.AccessKeyLastUsed); } });

Para ejecutar el ejemplo, escriba lo siguiente en la línea de comandos.

node iam_accesskeylastused.js

Este código de muestra se puede encontraraquí enGitHub.

Actualización del estado de la clave de acceso

Cree un módulo de Node.js con el nombre de archivo iam_updateaccesskey.js. Asegúrese de configurar el SDK tal y como se ha indicado anteriormente. Para acceder a IAM, cree unAWS.IAMobjeto de servicio. Cree un objeto JSON que contenga los parámetros necesarios para actualizar el estado de una clave de acceso, que incluya el ID de clave de acceso y el estado actualizado. El estado puede ser Active o Inactive. Llame al método updateAccessKey del objeto de servicio de AWS.IAM.

// Load the AWS SDK for Node.js var AWS = require('aws-sdk'); // Set the region AWS.config.update({region: 'REGION'}); // Create the IAM service object var iam = new AWS.IAM({apiVersion: '2010-05-08'}); var params = { AccessKeyId: 'ACCESS_KEY_ID', Status: 'Active', UserName: 'USER_NAME' }; iam.updateAccessKey(params, function(err, data) { if (err) { console.log("Error", err); } else { console.log("Success", data); } });

Para ejecutar el ejemplo, escriba lo siguiente en la línea de comandos.

node iam_updateaccesskey.js

Este código de muestra se puede encontrar.aquí enGitHub.

Eliminación de claves de acceso

Cree un módulo de Node.js con el nombre de archivo iam_deleteaccesskey.js. Asegúrese de configurar el SDK tal y como se ha indicado anteriormente. Para acceder a IAM, cree unAWS.IAMobjeto de servicio. Cree un objeto JSON que contenga los parámetros necesarios para eliminar claves de acceso, que incluya el ID de clave de acceso y el nombre del usuario. Llame al método deleteAccessKey del objeto de servicio de AWS.IAM.

// Load the AWS SDK for Node.js var AWS = require('aws-sdk'); // Set the region AWS.config.update({region: 'REGION'}); // Create the IAM service object var iam = new AWS.IAM({apiVersion: '2010-05-08'}); var params = { AccessKeyId: 'ACCESS_KEY_ID', UserName: 'USER_NAME' }; iam.deleteAccessKey(params, function(err, data) { if (err) { console.log("Error", err); } else { console.log("Success", data); } });

Para ejecutar el ejemplo, escriba lo siguiente en la línea de comandos.

node iam_deleteaccesskey.js

Este código de muestra se puede encontrar.aquí enGitHub.