Anunciamos
Gerenciar usuários do IAM
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:
Instale o Node.js. Para obter mais informações sobre como instalar Node.js, consulte o website de Node.js
. Crie um arquivo de configurações compartilhado com as credenciais de usuário. Para obter mais informações sobre como fornecer um arquivo de credenciais compartilhadas, consulte Carregar credenciais em Node.js do arquivo de credenciais compartilhado.
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