티스토리 뷰

| AWS CLI 자격증명 설정 우선순위

 

실무에서 자주 쓰이는 방법은 Bold(두껍게)처리 했습니다.

 

1.CLI 명령어 옵션

2.환경변수

3.CLI 자격증명 파일 - ~/.aws/credentials

4.CLI 설정 파일 - ~/.aws/config

5.컨테이너 자격증명 (ECS의 경우)

6.인스턴스 프로파일 자격 증명 (EC2의 경우)

 

이 중 1,2,4,6번의 방법이 가장 많이 쓰입니다.

 

1번 방법

CLI 명령어 옵션을 통한 설정파일 설정 방법.

 

 

2번 방법인 환경변수를 설정하는 방법

 

 기본적으로 AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY를 설정하는 방법과

또 다른 방법으로는 사용자 프로파일 (AWS_PROFILE)을 설정하는 방법이 있습니다.

 

ACCESS_KEY

 

기본적으로 ACCESS KEY를 발급받는 방법은 보안 자격 증명 tab으로 이동하여 액세스 키 -> 새 액세스 키 만들기를 눌러 발급 받으실 수 있습니다.

4번 방법

AWS CLI 설정파일은 " ~/.aws/config " 에 위치합니다.

 

기본 설정 방법은 밑에 사진과 같이 설정할 수 있습니다.



6번 EC2 인스턴스 프로파일로 설정하는 방법

 

인스턴스 프로파일(Instance Profile)이란?

IAM 역할(Role)을 EC2 머신에 부여하기 위한 목적. 즉, EC2 머신에게 IAM 역할 부여 

 

ex) ec2 머신위에 application이 올라간다고 하면, 해당 app이 aws s3 bucket에 file을 업로드 하고자 할 때 그 경우 ec2 머신에 instance profile을 통해 s3 bucket 권한이 있는 iam 역할을 부여하게 되면 이런 일을 수행항 수 있습니다.

 

이 개념과 사용 방법은 꼭 익혀두시길 바랍니다.

 

EC2 내에서 AWS 서비스에 대한 권한을 수행할 수 있게 됨.

 

 

aws cli 설정 파일을 통해 access key 설정하는 방법

access key 정보를 복사 후 선호하는 IDE or nvim , vim을 통하여 사용자 home 디렉터리에 config file을 열어보면

 

설정한적이 없다면 다음과 같은 정보가 뜨지 않는다.

여기에 복사한 aws key들을 넣어주자

 

복사한 aws key들을 아래 양식과 같이 맞춰서 넣어줍시다.

 

현재 설정된 정보 확인

 

aws sts get-caller-identity

 

 

 

 

aws cli에 기본 리전(region) 설정

 

aws ec2 describe-key-pairs

- 해당 명령어는 등록된 key parirs의 목록을 불러옵니다.

 

명령어를 실행 후 you must specify a region ~~과 같은 메시지가 나온다면 region을 지정해줘야 합니다.

 

aws ec2 describe-key-pairs --region ap-northeast-2

 

 

AWS CLI 사용자 프로파일 설정

~/.aws/config 파일 상에 [profile name] 섹션을 추가하여 여러 사용자 프로파일 등록이 가능합니다.

이렇게 되면 여러 aws 자격증명에 대하여 효율적인 관리가 가능합니다.

 

사용자 프로파일 사용법은 간답합니다.

AWS_PROFILE 환경변수 혹은 --profile 옵션을 사용하여 특정 사용자 프로파일로 명령어 수행이 가능합니다.

 

profile이 2개가 있는데 1번은 eu-west-1 번을 사용하는 profile이며 2번은 ap-northeast-1 을 사용하는 profile입니다.

 

다음 명령어를 통해 현재 사용자 프로파일에 지역을 가져옵니다.

aws configure get region

 

 

그럼 default 로 설정된 값이 출력이됩니다.

--profile 옵션을 주어 다른 지역으로 출력해보겠습니다.

 

환경변수를 이용한 출력

 

//환경 변수 명령어 실행
export AWS_PROFILE=ap-northeast-1


//명령어 재입력
aws configure get region

-> ap-northeast-1 출력