Gerenciar usuários do IAM - AWS SDK for JavaScript

Anunciamos o próximo fim do suporte para o AWS SDK for JavaScript v2. Recomendamos migrar para o AWS SDK for JavaScript v3. Para saber as datas e receber detalhes adicionais e informações sobre como migrar, consulte o anúncio vinculado.

Gerenciar usuários do IAM

JavaScript code example that applies to Node.js execution

Este exemplo de código Node.js mostra:

  • Como recuperar uma lista de usuários do IAM.

  • Como criar e excluir usuários.

  • Como atualizar um nome de usuário.

O cenário

Neste exemplo, é usada uma série de módulos do Node.js para criar e gerenciar usuários no IAM. Os módulos do Node.js usam o SDK para criar, excluir e atualizar os usuários usando estes métodos da classe de cliente do AWS.IAM:

Para obter mais informações sobre usuários do IAM, consulte Usuários do IAM no Guia do usuário do IAM.

Tarefas de pré-requisito

Para configurar e executar este exemplo, você deve primeiro concluir estas tarefas:

Criação de um usuário

Crie um módulo do Node.js com o nome de arquivo iam_createuser.js. Não se esqueça de configurar o SDK conforme mostrado anteriormente. Para acessar o IAM, crie um objeto de serviço do AWS.IAM. Crie um objeto JSON contendo os parâmetros necessários, compostos pelo nome do usuário que você deseja usar para o novo usuário como um parâmetro de linha de comando.

Chame o método getUser do objeto de serviço AWS.IAM para ver se o nome de usuário já existe. Se o nome de usuário ainda não existir, chame o método createUser para criá-lo. Se o nome já existe, escreva uma mensagem sobre esse efeito para o console.

// 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 = { UserName: process.argv[2], }; iam.getUser(params, function (err, data) { if (err && err.code === "NoSuchEntity") { iam.createUser(params, function (err, data) { if (err) { console.log("Error", err); } else { console.log("Success", data); } }); } else { console.log( "User " + process.argv[2] + " already exists", data.User.UserId ); } });

Para executar o exemplo, digite o seguinte na linha de comando.

node iam_createuser.js USER_NAME

Este código de exemplo pode ser encontrado aqui no GitHub.

Listar os usuários na sua conta

Crie um módulo do Node.js com o nome de arquivo iam_listusers.js. Não se esqueça de configurar o SDK conforme mostrado anteriormente. Para acessar o IAM, crie um objeto de serviço do AWS.IAM. Crie um objeto JSON contendo os parâmetros necessários para listar seus usuários, limitando o número retornado ao definir o parâmetro MaxItems a 10. Chame o método listUsers do objeto de serviço do AWS.IAM. Grave o nome do primeiro usuário e a data de criação no console.

// 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: 10, }; iam.listUsers(params, function (err, data) { if (err) { console.log("Error", err); } else { var users = data.Users || []; users.forEach(function (user) { console.log("User " + user.UserName + " created", user.CreateDate); }); } });

Para executar o exemplo, digite o seguinte na linha de comando.

node iam_listusers.js

Este código de exemplo pode ser encontrado aqui no GitHub.

Atualizar o nome de um usuário

Crie um módulo do Node.js com o nome de arquivo iam_updateuser.js. Não se esqueça de configurar o SDK conforme mostrado anteriormente. Para acessar o IAM, crie um objeto de serviço do AWS.IAM. Crie um objeto JSON contendo os parâmetros necessários para listar seus usuários, especificando tanto o nome atual quanto o nome novo do usuário na forma de parâmetros de linha de comando. Chame o método updateUser do objeto de serviço do 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 = { UserName: process.argv[2], NewUserName: process.argv[3], }; iam.updateUser(params, function (err, data) { if (err) { console.log("Error", err); } else { console.log("Success", data); } });

Para executar o exemplo, digite o que está a seguir na linha de comando, especificando o nome atual do usuário seguido pelo nome novo do usuário.

node iam_updateuser.js ORIGINAL_USERNAME NEW_USERNAME

Este código de exemplo pode ser encontrado aqui no GitHub.

Excluir um usuário

Crie um módulo do Node.js com o nome de arquivo iam_deleteuser.js. Não se esqueça de configurar o SDK conforme mostrado anteriormente. Para acessar o IAM, crie um objeto de serviço do AWS.IAM. Crie um objeto JSON contendo os parâmetros necessários, compostos pelo nome do usuário que você deseja excluir como um parâmetro de linha de comando.

Chame o método getUser do objeto de serviço AWS.IAM para ver se o nome de usuário já existe. Se o nome de usuário não existir, escreva uma mensagem sobre esse efeito para o console. Se o usuário existir, chame o método deleteUser para excluí-lo.

// 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 = { UserName: process.argv[2], }; iam.getUser(params, function (err, data) { if (err && err.code === "NoSuchEntity") { console.log("User " + process.argv[2] + " does not exist."); } else { iam.deleteUser(params, function (err, data) { if (err) { console.log("Error", err); } else { console.log("Success", data); } }); } });

Para executar o exemplo, digite o seguinte na linha de comando.

node iam_deleteuser.js USER_NAME

Este código de exemplo pode ser encontrado aqui no GitHub.