Multiple credentials

Server/AWS 2018. 7. 27. 00:11

IAM 에서 사용자에게 모든 role 을 부여하지 않고 필요에 맞게 사용자를 추가하여 role 을 부여했다면, cli 사용시 여러 사용자의 자격 증명을 로컬 파일에 저장하고 서비스에 맞게 자격 증명을 선택하여 사용할 수도 있다. 여러 자격 증명의 구분을 프로필 이름으로 할 수 있도록 프로필 이름을 명시한다.



Named profiles


~/.aws/credentials
 
[default]
aws_access_key_id=AKIAIOSFODNN7EXAMPLE
aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
 
[user2]
aws_access_key_id=AKIAI44QH8DHBEXAMPLE
aws_secret_access_key=je7MtGbClwBF/2Zp9Utk/h3yCo8nvbEXAMPLEKEY
 
~/.aws/config
 
[default]
region=us-west-2
output=json
 
[profile user2]
region=us-east-1
output=text
cs


보다시피 credentials 파일과 config 파일의 [profile name] 형식이 다름에 유의 한다.

이렇게 수동으로 작성해도 되고, aws configure 명령을 사용하여 profile 을 추가해도 된다.


$ aws configure --profile user2
AWS Access Key ID [None]: AKIAI44QH8DHBEXAMPLE
AWS Secret Access Key [None]: je7MtGbClwBF/2Zp9Utk/h3yCo8nvbEXAMPLEKEY
Default region name [None]: us-east-1
Default output format [None]: text
cs


이렇게 여러 자격 증명이 등록되었다면 실제 명령에 --profile user2 라고 추가하면 되고,

계속해서 해당 프로필을 사용한다면 아래처럼 환경 변수로 등록할 수 있다.


$ export AWS_PROFILE=user2
cs


현재 자격 증명 확인


$ aws configure list
      Name                    Value             Type    Location
      ----                    -----             ----    --------
   profile                    user2           manual    --profile
access_key     ****************MPLE shared-credentials-file
secret_key     ****************EKEY shared-credentials-file
    region                us-east-1      config-file    ~/.aws/config
cs




WRITTEN BY
손가락귀신
정신 못차리면, 벌 받는다.

,