[개요]


 계정 관리자가 교차 계정 액세스를 위해서 역할 및 리소스를 소유하는 계정과 신뢰 받는 계정간의 신뢰를 설정할 수 있습니다.

신뢰 받는 계정의 관리자는 계정에 속한 특정 그룹 또는 사용자에게 역할 전환 권한을 부여하여 역할 전환으로 작업을 수행할 수 있습니다.


프로젝트 환경은 DEV/STG/PRD 등으로 나뉘어져 진행되기 때문에 Account가 많아져 작업 처리가 어렵습니다.

이때 Switch Role을 사용하면 재로그인/MFA 인증등의 번거로움을 줄여 계정 전환을 간소화해주며 보안적인 측면에서 안전합니다.


[역할 전환]


A Account : DEV

B Account : MGMT

C Account : PRD

User D : Switch Role을 부여받은 사용자


User D - (Switch Role) - DEV / STG/ PRD 간 자유로운 전환


위와 같이 자유롭게 계정 전환을 하는 것을 목표로 합니다.


[ 주의 사항 ]


Root 계정에서 역할 전환 기능은 권장하지 않습니다.

SwitchRole을 위해서는 신뢰 관계가 있어야 하므로 신뢰 관계 설정 대상 계정의 Role에 User 또는 Usergroup을 추가하여 신뢰관계를 형성 해야합니다.


예를 들어, User D가 DEV, MGMT, PRD 계정에 접근할 수 있도록 신뢰 관계를 설정할 때, 각 대상 계정(DEV, MGMT, PRD)에서 User D를 신뢰하도록 설정해야 합니다.


이때 Policy에 "sts:AssumRole"을 추가하여 임시 자격 증명을 받아야 신뢰 관계가 성립됩니다.



[ 절차 ]


1. 역할을 부여 받을 IAM User의 콘솔 로그인 후 Policy (정책) 생성  (User D 계정에서 작업 진행)

- sts: AssumRole은 임시자격증명의 받을 수 있는 정책입니다.



2. Attach Policy

- User Group 또는 User에 정책 연결

( User Group으로 User를 관리해야 해당 사용자의 권한을 더 쉽게 관리할 수 있습니다. )



3. 역할 전환할 계정 (Account A,B,C)에서 Role의 Trust Relationships에 User 추가

- 역할 생성 후 정책 연결 

- 테스트 목적으로 임시로 AdministratorAccess 정책을 부여할 수 있지만, 실제 환경에서는 최소 권한의 정책을 사용하는 것이 좋습니다.

-Trust Relationships(신뢰관계) : 역할 부여 받을 계정의 User arn 추가



4. 역할 전환하기 (Switch Role)

- User D의 AWS 콘솔 우측 상단 프로필 메뉴에서 Switch Role(역할 전환) 선택

- Account ID : 3. 에서 역할을 생성한 계정ID

- IAM role name : 3. 에서 생성한 역할의 Name 

- Display name : 역할 전환 후 표기될 이름 ( 편의상 자신이 전환할 환경을 기재할 수 있습니다. )

- Display Color : 여러 계정을 관리할 경우 색상을 지정하여 쉽 구분할 수 있습니다.


5. 확인

 - 성공적으로 역할이 전환 되면 우측 상단 위에 지정한 색상 및 표시 이름이 바뀌어서 나오게 됩니다.

- 원래 계정으로 돌아가고 싶다면 [다시전환] 버튼을 이용하여 원래 계정으로 전환할 수 있습니다.