AWS SDK 또는 CLI로 UpdateUser 사용하기

AWS SDK 또는 CLI로 UpdateUser 사용하기

다음 코드 예시는 UpdateUser을(를) 사용하는 방법을 보여줘요.

액션 예시는 더 큰 프로그램에서 발췌한 코드 조각이라, 실제 프로그램 컨텍스트 안에서 실행돼야 해요.

출처: 문서

본문

SDK for C++

참고: GitHub에 더 많은 내용이 있어요. AWS Code Examples Repository에서 전체 예시를 찾아 실행·설정 방법을 배울 수 있어요.

bool AwsDoc::IAM::updateUser(const Aws::String &currentUserName,
                             const Aws::String &newUserName,
                             const Aws::Client::ClientConfiguration &clientConfig)
{

    Aws::IAM::IAMClient iam(clientConfig);

    Aws::IAM::Model::UpdateUserRequest request;
    request.SetUserName(currentUserName);
    request.SetNewUserName(newUserName);

    auto outcome = iam.UpdateUser(request);
    if (outcome.IsSuccess())
{

        std::cout << "IAM user " << currentUserName <<
                  " successfully updated with new user name " << newUserName <<
                  std::endl;
    }
    else
{

        std::cerr << "Error updating user name for IAM user " << currentUserName <<
                  ":" << outcome.GetError().GetMessage() << std::endl;
    }

    return outcome.IsSuccess();
}

API 상세 내용은 AWS SDK for C++ API Reference의 UpdateUser 문서를 참고하세요.

AWS CLI

IAM 사용자 이름을 변경하려면

다음 update-user 명령은 IAM 사용자 이름을 Bob에서 Robert로 변경해요.

aws iam update-user \
    --user-name
Bob
 \
    --new-user-name
Robert

이 명령은 출력이 없어요.

더 자세한 내용은 AWS IAM 사용자 가이드의 'IAM 사용자 그룹 이름 변경' 문서를 참고하세요.

API 상세 내용은 AWS CLI Command Reference의 UpdateUser 문서를 참고하세요.

SDK for Java 2.x

참고: GitHub에 더 많은 내용이 있어요. AWS Code Examples Repository에서 전체 예시를 찾아 실행·설정 방법을 배울 수 있어요.

import software.amazon.awssdk.regions.Region;
import software.amazon.awssdk.services.iam.IamClient;
import software.amazon.awssdk.services.iam.model.IamException;
import software.amazon.awssdk.services.iam.model.UpdateUserRequest;

/**
 * Before running this Java V2 code example, set up your development
 * environment, including your credentials.
 *
 * For more information, see the following documentation topic:
 *
 * https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/get-started.html
 */
public class UpdateUser
{

    public static void main(String[] args)
{

        final String usage = """

                Usage:
                    <curName> <newName>\s

                Where:
                    curName - The current user name.\s
                    newName - An updated user name.\s
                """;

        if (args.length != 2)
{

            System.out.println(usage);
            System.exit(1);
        }

        String curName = args[0];
        String newName = args[1];
        Region region = Region.AWS_GLOBAL;
        IamClient iam = IamClient.builder()
                .region(region)
                .build();

        updateIAMUser(iam, curName, newName);
        System.out.println("Done");
        iam.close();
    }

    public static void updateIAMUser(IamClient iam, String curName, String newName)
{

        try
{

            UpdateUserRequest request = UpdateUserRequest.builder()
                    .userName(curName)
                    .newUserName(newName)
                    .build();

            iam.updateUser(request);
            System.out.printf("Successfully updated user to username %s", newName);

        } catch (IamException e)
{

            System.err.println(e.awsErrorDetails().errorMessage());
            System.exit(1);
        }
    }
}

API 상세 내용은 AWS SDK for Java 2.x API Reference의 UpdateUser 문서를 참고하세요.

SDK for JavaScript (v3)

참고: GitHub에 더 많은 내용이 있어요. AWS Code Examples Repository에서 전체 예시를 찾아 실행·설정 방법을 배울 수 있어요.

사용자를 업데이트해요.

import
{
 UpdateUserCommand, IAMClient } from "@aws-sdk/client-iam";

const client = new IAMClient(
{
});

/**
 *
 * @param
{
string} currentUserName
 * @param
{
string} newUserName
 */
export const updateUser = (currentUserName, newUserName) =>
{

  const command = new UpdateUserCommand(
{

    UserName: currentUserName,
    NewUserName: newUserName,
  });

  return client.send(command);
};

더 자세한 내용은 AWS SDK for JavaScript 개발자 가이드를 참고하세요.

API 상세 내용은 AWS SDK for JavaScript API Reference의 UpdateUser 문서를 참고하세요.

SDK for JavaScript (v2)

참고: GitHub에 더 많은 내용이 있어요. AWS Code Examples Repository에서 전체 예시를 찾아 실행·설정 방법을 배울 수 있어요.

// 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);
  }
});

더 자세한 내용은 AWS SDK for JavaScript 개발자 가이드를 참고하세요.

API 상세 내용은 AWS SDK for JavaScript API Reference의 UpdateUser 문서를 참고하세요.

SDK for Kotlin

참고: GitHub에 더 많은 내용이 있어요. AWS Code Examples Repository에서 전체 예시를 찾아 실행·설정 방법을 배울 수 있어요.

suspend fun updateIAMUser(
    curName: String?,
    newName: String?,
)
{

    val request =
        UpdateUserRequest
{

            userName = curName
            newUserName = newName
        }

    IamClient.fromEnvironment
{
 region = "AWS_GLOBAL" }.use
{
 iamClient ->
        iamClient.updateUser(request)
        println("Successfully updated user to $newName")
    }
}

API 상세 내용은 AWS SDK for Kotlin API reference의 UpdateUser 문서를 참고하세요.

Tools for PowerShell V4

예시 1: 이 예시는 IAM 사용자 이름을 Bob에서 Robert로 변경해요.

Update-IAMUser -UserName Bob -NewUserName Robert

예시 2: 이 예시는 IAM 사용자 Bob의 경로를 /Org1/Org2/로 변경해요. 이로써 사용자의 ARN이 arn:aws:iam::123456789012:user/Org1/Org2/bob으로 바뀌어요.

Update-IAMUser -UserName Bob -NewPath /Org1/Org2/

API 상세 내용은 AWS Tools for PowerShell Cmdlet Reference (V4)의 UpdateUser 문서를 참고하세요.

Tools for PowerShell V5

예시 1: 이 예시는 IAM 사용자 이름을 Bob에서 Robert로 변경해요.

Update-IAMUser -UserName Bob -NewUserName Robert

예시 2: 이 예시는 IAM 사용자 Bob의 경로를 /Org1/Org2/로 변경해요. 이로써 사용자의 ARN이 arn:aws:iam::123456789012:user/Org1/Org2/bob으로 바뀌어요.

Update-IAMUser -UserName Bob -NewPath /Org1/Org2/

API 상세 내용은 AWS Tools for PowerShell Cmdlet Reference (V5)의 UpdateUser 문서를 참고하세요.

SDK for Python (Boto3)

참고: GitHub에 더 많은 내용이 있어요. AWS Code Examples Repository에서 전체 예시를 찾아 실행·설정 방법을 배울 수 있어요.

def update_user(user_name, new_user_name):
    """
    Updates a user's name.

    :param user_name: The current name of the user to update.
    :param new_user_name: The new name to assign to the user.
    :return: The updated user.
    """
    try:
        user = iam.User(user_name)
        user.update(NewUserName=new_user_name)
        logger.info("Renamed %s to %s.", user_name, new_user_name)
    except ClientError:
        logger.exception("Couldn't update name for user %s.", user_name)
        raise
    return user

API 상세 내용은 AWS SDK for Python (Boto3) API Reference의 UpdateUser 문서를 참고하세요.

SDK for Ruby

참고: GitHub에 더 많은 내용이 있어요. AWS Code Examples Repository에서 전체 예시를 찾아 실행·설정 방법을 배울 수 있어요.

  # Updates an IAM user's name
  #
  # @param current_name [String] The current name of the user
  # @param new_name [String] The new name of the user
  def update_user_name(current_name, new_name)
    @iam_client.update_user(user_name: current_name, new_user_name: new_name)
    true
  rescue StandardError => e
    @logger.error("Error updating user name from '#
{
current_name}' to '#
{
new_name}': #
{
e.message}")
    false
  end

API 상세 내용은 AWS SDK for Ruby API Reference의 UpdateUser 문서를 참고하세요.

SDK for SAP ABAP

참고: GitHub에 더 많은 내용이 있어요. AWS Code Examples Repository에서 전체 예시를 찾아 실행·설정 방법을 배울 수 있어요.

    TRY.
        lo_iam->updateuser(
          iv_username = iv_user_name
          iv_newusername = iv_new_user_name ).
        MESSAGE 'User updated successfully.' TYPE 'I'.
      CATCH /aws1/cx_iamnosuchentityex.
        MESSAGE 'User does not exist.' TYPE 'E'.
      CATCH /aws1/cx_iamentityalrdyexex.
        MESSAGE 'New user name already exists.' TYPE 'E'.
    ENDTRY.

API 상세 내용은 AWS SDK for SAP ABAP API reference의 UpdateUser 문서를 참고하세요.

더 알아보기 (Learn more)