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
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.IAM
clase 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:
Instale Node.js. Para obtener más información acerca de la instalación de Node.js consulte el sitio web de Node.js
. Cree un archivo de configuraciones compartidas con sus credenciales de usuario. Para obtener más información acerca de cómo crear un archivo de credenciales compartidas, consulte Carga de credenciales en Node.js desde el archivo de credenciales compartidas.
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.IAM
objeto 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.IAM
objeto 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.IAM
objeto 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.IAM
objeto 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.IAM
objeto 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