AWS 프로필은 AWS CLI(Command Line Interface)·SDK(Software Development Kit)가 쓸 자격 증명(credentials)과 설정 묶음에 붙인 이름이다. 한 기기에서 여러 계정·역할을 바꿔 가며 쓸 수 있게 해 준다.
파일 두 개
# ~/.aws/credentials — 비밀값
[default]
aws_access_key_id = AKIA...
aws_secret_access_key = ...
[prod]
aws_access_key_id = AKIA...
aws_secret_access_key = ...# ~/.aws/config — 리전·출력 형식·역할
[default]
region = ap-northeast-2
[profile prod]
region = ap-northeast-2
output = jsoncredentials 파일은 [이름], config 파일은 [profile 이름]으로 적는다(default만 예외).
고르는 방법
aws s3 ls --profile prod # 명령마다
export AWS_PROFILE=prod # 셸 세션 전체
aws sts get-caller-identity # 지금 누구로 인증됐는지 확인지정하지 않으면 default를 쓴다. 권한 오류가 나면 먼저 get-caller-identity로 의도한 계정·역할인지 본다. 환경변수 AWS_ACCESS_KEY_ID가 잡혀 있으면 프로필보다 우선하므로 그것도 확인한다(환경변수 스코프와 source).
오래 가는 키 대신 SSO
장기 액세스 키를 파일에 두는 대신 IAM(Identity and Access Management) Identity Center(SSO, Single Sign-On) 프로필을 쓰면 짧게 만료되는 임시 자격 증명을 받는다.
aws configure sso
aws sso login --profile prod비밀값을 다루는 방식이라 인증과 인가와, 앱이 시작할 때 비밀 저장소에서 설정을 받아오는 구조는 스프링 설정 외부화와 프로파일와 이어진다. AWS가 어떤 층까지 관리해 주는지는 IaaS·PaaS·SaaS를 본다.