본문 바로가기
Public Cloud/AWS - Experience

[AWS] AWS CLI Profile(프로파일) 설정 방법?

by ymkim 2025. 3. 15.

AWS CLI를 사용하면 AWS 리소스를 손쉽게 관리할 수 있지만, 다수의 AWS 계정(account)이나 리전(region)을 관리해야 하는 상황에서는 번거로울 수 있다. 이를 해결하기 위해 AWS CLI는 프로파일(Profile) 기능을 제공한다. 이번에는 AWS Profile에 대해 간략히 알아보고 설정하는 방법까지 진행 해보자.

01. AWS Profile란?

AWS Profile은 AWS CLI 또는 SDK에서 여러개의 자격증명(Credentials)와 설정을 관리할 수 있도록 하는 기능이다. AWS Profile을 사용하면 AWS 계정 또는 다른 IAM 역할(Role)로 손쉽게 전환이 가능하다. 쉽게 설명하면 AWS에서 누가 API를 호출했고 권한이 있는지 확인해야 하는데, 이러한 정보(권한)을 확인하기 위해 구성되는 파일을 의미한다.

01-1. 언제 Profile을 사용하면 좋을까?

AWS Profile은 다음과 같은 경우에 사용하면 유용하다.

  1. 다수의 AWS 사용자를 관리해야 하는 경우
  2. 다수의 AWS 리전(Region)을 관리해야 하는 경우
  3. 다양한 인증 정보를 관리해야 하는 경우

01-2. AWS Profile 종류

AWS Profile 종류는 아래와 같이 configcredentials 2가지로 분류된다.

파일 역할 기본 위치
credentials 자격 증명(AWS Access Key, Secret Access Key) 저장 ~/.aws/credentials
config 기본 리전, 출력 형식, IAM 역할(Role) 설정 ~/.aws/config

https://malwareanalysis.tistory.com/317

credentials는 AWS CLI나 SDK에서 API를 요청하는 경우, 해당 주체의 자격 증명(Credentials)를 인증하기 위한 Access key와 Secret access key가 저장되는 파일이다. 이에 반해, config는 각 Credential에 별로 설정되어야 하는 기본 정보(리전, 출력 형식, IAM 역할)를 저장하는 파일이다.

01-3. AWS CLI Profile 설정

# default aws profile
aws configure

AWS Access Key ID [None]: <Access Key ID>
AWS Secret Access Key [None]: <Secret Access Key>
Default region name [None]: ap-northeast-2
Default output format [None]: json
# user aws profile
aws configure --profile=<profile 이름>

AWS Access Key ID [None]: <Access Key ID>
AWS Secret Access Key [None]: <Secret Access Key>
Default region name [None]: ap-northeast-2
Default output format [None]: json

aws configure를 실행하면 credentials 및 config 파일이 자동으로 생성된다. 프로필 이름을 지정하지 않으면 기본적으로 default 프로필이 생성되며, 특정 이름을 지정하면 해당 이름의 프로필이 생성된다.

  • Access Key: IAM 사용자의 access key 입력
  • Secret Access Key: IAM 사용자의 secret access key 입력
  • region name: IAM 사용자의 리전(Region) 정보 입력
  • output format: Credentials 출력 형태 입력

AWS CLI Profile 저장 결과

~/.aws/credentials

[default]
region = ap-northeast-2
aws_access_key_id = Axxxxxxxxxxxxxxxx
aws_secret_access_key = Axxxxxxxxxxxxxxxx

[user]
region = ap-northeast-2
aws_access_key_id = Bxxxxxxxxxxxxxxxx
aws_secret_access_key = Cxxxxxxxxxxxxxxxx

~/.aws/config

[default]
output = json
region = ap-northeast-2

[user]
output = json
region = ap-northeast-2

01-4. AWS CLI Profile 전환 확인

export AWS_PROFILE=user

AWS Profile을 전환하기 위해 환경 변수(Env)를 설정하여 이전에 생성한 user 프로필을 등록한다.

aws sts get-caller-identity

현재 설정된 Profile의 Credentials 정보 확인

aws ec2 describe-instances --profile user

1회성으로 명령어를 실행해야 할 경우, AWS CLI에서 --profile user1 옵션을 사용하여 특정 프로필을 지정할 수 있다. 또한, AWS CLI를 활용하여 Assume Role을 통해 IAM 역할로 전환하는 방법도 존재하지만, 이에 대한 자세한 내용은 추후 다루도록 하겠다. 이를 끝으로 이번 포스팅을 마무리한다.

99. 참고 자료

 

AWS CLI 프로파일(Profile) 설정 및 활용법 - NDS Cloud Tech Blog

이번 글에서는 AWS CLI의 프로파일 설정과 활용법을 실습과 함께 자세히 알아보고, 효율적인 사용을 위한 팁을 공유하겠습니다.

tech.cloud.nongshim.co.kr

 

AWS profile 관리

이 글은 aws profile을 다룹니다. pdf: https://www.slideshare.net/sungwookchoi5/aws-profile-251650637 영상: https://youtu.be/IILwDQdEe9U aws profile이란? aws에서 누가 api를 호출했고 권한이 있는지 확인해야하는데요. 확인에

malwareanalysis.tistory.com