Search

[AWS CLI]에서 SSO를 사용한 접속

PublishDate
2021/04/28
Category
AWS CLI
Tag & Keyword
SSO
profile
이 실습은 Windows Powershell 기준입니다. SSO 로그인 URL을 가지고 있어야합니다.

시작 전

SSO란? : Single Sign On의 약자로 여러 AWS 계정 및 비즈니스 애플리케이션에 대한 액세스를 중앙에서 손쉽게 관리하고 사용자에게 Single Sign-On 액세스를 제공하여 할당된 모든 계정 및 애플리케이션을 한 곳에서 액세스할 수 있는 서비스입니다.
AWS SSO는 AWS계정 뿐만 아니라 Salesforce, Box, Microsoft 365, Zendesk와 같은 다양한 애플리케이션을 지원합니다.
대부분 AWS SSO를 처음 사용하면 GUI 환경에서 콘솔로 이어지는 환경으로 사용합니다. 하지만 AWS에는 콘솔에서 지원하지 않는, AWS CLI로만 적용할 수 있는 작업들이 있기 때문에 이러한 작업을 할 때에도 SSO를 통한 로그인이 필요합니다.

AWS CLI에서 SSO 접속 따라하기

1.
PowerShell에서 aws --version 명령어를 사용해서 aws 버전이 1.x 라면 AWS CLI를 삭제하기
2.
여기를 눌러서 OS에 맞는 AWS CLI2 설치
3.
aws configure sso 명령 입력
4.
AWS SSO URL과 Region 입력 ( 대부분 us-east-1 일 것, 사용할 Region이 아닌 SSO Region 사용)
5.
자동으로 리디렉션되는 페이지에서 로그인하기
6.
로그인 성공 결과
7.
접속할 계정 선택하면 다음처럼 임시 Key가 생성됨
CLI default client Region : 리전 옵션을 넣지 않았을 때 작업 할 Region 정보
CLI default output format : 출력 포맷은 이 작업에선 설정하지 않아도 됨
CLI profile name : --profile 옵션 사용할때 해당 계정의 profile을 원하는 이름으로 설정가능
8.
AWS CLI 명령을 사용할 때 --profile [프로필 이름]을 넣어서 사용하면 된다.

결론

AWS Configure 명령어로 IAM User Key를 사용한 CLI 사용뿐만 아니라 AWS SSO로 접속할 수 있다.
IAM User를 생성하지 않고도 AWS CLI를 사용할 수 있기 때문에, AWS CLI사용을 위해서 불필요한 IAM User를 생성하지 않아도 되고, 그러한 생성 & 관리 & 제거에 대한 노력이 사라진다.
신기하고 편하다. (특히 vscode에서 코드작업하면서 내장 터미널로 aws cli 사용할 때 정말 편하다.)