본문 바로가기
Infra, Cloud/AWS

[AWS] Organizations로 계정 관리하기

by J4J 2023. 8. 13.
300x250
반응형

안녕하세요. J4J입니다.

 

이번 포스팅은 Organizations로 계정 관리하는 방법에 대해 적어보는 시간을 가져보려고 합니다.

 

 

 

이전 글

 

[AWS] IAM으로 사용자 관리하기

[AWS] IAM으로 사용자 그룹 관리하기

[AWS] IAM 역할을 이용하여 임시 권한 부여하기

 

 

반응형

 

 

Organizations란?

 

AWS Organizations는 여러 AWS 계정들을 조직 단위로 통합하여 중앙 관리할 수 있도록 도와주는 AWS 서비스입니다.

 

개인적으로 Organizations를 처음 접하게 되면서 가장 궁금했던 부분은 "IAM과 어떤 차이가 있을까?" 였습니다.

 

IAM과의 차이점은 다음과 같이 간단히 정리해 볼 수 있습니다.

 

 

 

첫 번째는 관리되는 계정입니다.

 

IAM은 AWS 계정을 통해 생성할 수 있는 IAM 사용자들을 관리합니다.

 

하지만 Organizations는 IAM 사용자가 아닌 AWS 계정 자체를 관리합니다.

 

그러므로 여러 조직에서 사용되는 AWS 계정들을 중앙 관리할 수 있도록 도와줍니다.

 

 

 

두 번째는 그룹 관리입니다.

 

IAM은 사용자 그룹을 이용하여 생성했던 IAM 사용자들을 그룹 단위로 관리할 수 있습니다.

 

Organizations는 OU (Organizations Unit)를 이용하여 AWS 계정들을 그룹 단위로 관리할 수 있게 도와줍니다.

 

또한 OU는 IAM 사용자 그룹처럼 사용자만 등록할 수 있지 않고 OU 내부에 다른 OU를 등록하여 관리할 수도 있습니다.

 

 

 

세 번째는 권한입니다.

 

IAM은 정책을 이용하여 IAM 사용자에게 부여할 권한을 관리합니다.

 

Organizations는 SCP (Service Control Policy)를 이용하여 부여할 권한을 관리합니다.

 

그리고 SCP도 IAM 정책처럼 "Effect", "Action", "Resource" 정보들을 입력하여 어떤 식으로 권한을 부여할지 설정해볼 수 있습니다.

 

 

 

 

최종 적용 권한

 

또 다른 개인적인 궁금증은 Organizations를 사용하게 되면 "최종 적용 권한이 IAM 정책에 부여된 것이 기준인지?, Organizations SCP에 부여된 것이 기준인지?" 입니다.

 

이번 궁금증의 해결은 다음 그림을 통해 간단하게 이해해볼 수 있습니다.

 

최종 적용 권한

 

 

 

위의 벤 다이어그램에 보이는 것처럼 IAM 정책과 SCP의 교집합에 해당되는 부분만 최종적으로 권한이 적용됩니다.

 

예를 들면 정책에는 S3 사용 권한이 있지만 SCP에는 S3 사용 권한이 없다면 최종적으로 S3를 사용할 수 없는 것이고, 정책과 SCP에 모두 S3 사용 권한이 부여되어야만 S3를 사용할 수 있게 됩니다.

 

또한 정책과 SCP에 따로 권한 설정을 하지 않은 것들은 기본적으로 모두 사용할 수 없는 것으로 판단되니 두 곳 모두 Allow가 되어 있는 권한만 사용할 수 있다고 생각하시면 됩니다.

 

 

 

 

Organizations 생성 방법

 

Organizations를 생성하기 전 해당 조직의 대표 AWS 계정으로 먼저 접속을 합니다.

 

그리고 다음 순서대로 진행해 주시면 됩니다.

 

 

 

[ 1. Organizations 접속 ]

 

Organizations 접속

 

 

 

[ 2. 조직 생성 ]

 

메인 화면에서 "조직 생성" 버튼을 클릭합니다

 

조직 생성

 

 

 

그러면 다음과 같이 조직이 바로 생성되는 것을 확인해볼 수 있습니다.

 

조직 생성 결과

 

 

 

 

Organizations Unit 생성 방법

 

[ 1. Organizations Unit 생성할 상위 조직 선택 ]

 

저는 Root 아래에 새로운 Unit을 생성해 보겠습니다.

 

그래서 다음과 같이 조직 구조 목록에서 Root를 선택해 줍니다.

 

상위 조직 선택

 

 

 

[ 2. 조직 단위 새로 생성 ]

 

"작업"을 선택한 뒤 "새로 생성"을 클릭합니다.

 

조직 단위 새로 생성

 

 

 

그리고 세부정보들을 입력한 뒤 최종 생성해 줍니다.

 

조직 단위 세부 정보 입력

 

 

 

 

AWS 계정 추가

 

위에서 만든 OU에 다른 AWS 계정을 하나 추가해 보도록 하겠습니다.

 

 

 

[ 1. AWS 계정 추가 ]

 

먼저 오른쪽에 있는 "AWS 계정 추가" 버튼을 클릭합니다.

 

AWS 계정 추가

 

 

 

다음으로 "기존 AWS 계정 초대" 탭을 누릅니다.

 

처음 Organizations를 생성하여 AWS 계정 추가를 하는 경우 다음과 같이 "현재 관리 계정의 이메일 인증"을 수행해줘야 합니다.

 

"확인 이메일 전송" 버튼을 누른 뒤 이메일 인증을 진행해 주시면 됩니다.

 

관리 계정 이메일 인증

 

 

 

이메일 인증이 완료되면 다음과 같이 초대할 계정 정보를 입력할 수 있는 화면이 나옵니다.

 

해당 화면에서 초대할 AWS 계정 이메일 주소를 입력한 뒤 초대 전송을 합니다.

 

AWS 계정 초대

 

 

 

 

[ 2. 초대 수락 ]

 

계정 초대가 완료되었다면 초대를 요청한 AWS 계정으로 로그인을 합니다.

 

그리고 Organizations에 접속하여 왼쪽에서 "초대" 메뉴를 선택한 뒤 오른쪽에서 "초대 수락" 버튼을 클릭합니다.

 

초대 수락

 

 

 

[ 3. 계정 이동 ]

 

초대 수락이 완료되면 다음과 같이 조직 구조 목록에서 확인해볼 수 있습니다.

 

그리고 위에서 만든 OU 아래로 이동시켜야 되기 때문에 다음과 같이 계정을 체크한 뒤 "작업"을 선택하여 "이동"을 클릭합니다.

 

AWS 계정 이동

 

 

 

마지막으로 이동시킬 OU를 선택한 뒤 "AWS 계정 이동"을 클릭합니다.

 

AWS 계정 이동

 

 

 

 

SCP 권한 적용하는 방법

 

[ 1. SCP 활성화 ]

 

처음 SCP 설정을 하는 경우 SCP 활성화를 먼저 해줘야 합니다.

 

왼쪽 "정책" 메뉴를 선택한 뒤 "서비스 제어 정책"을 클릭합니다.

 

SCP 활성화

 

 

 

그리고 "서비스 제어 정책 활성화" 버튼을 클릭합니다.

 

SCP 활성화

 

 

 

[ 2. SCP 생성하기 ]

 

SCP를 활성화하면 기본적으로 AWS의 모든 권한에 접근할 수 있도록 설정되어 있습니다.

 

저는 이번에 위에서 만든 OU에 속하는 모든 AWS 계정 및 IAM 사용자에게 S3를 사용할 수 없도록 만들겠습니다.

 

 

 

먼저 생성한 OU를 선택하여 상세 정보로 들어온 뒤 "정책" 탭에서 "연결"을 클릭합니다.

 

정책 연결

 

 

 

다음으로 "정책 생성"을 클릭합니다.

 

정책 생성

 

 

 

그리고 S3 사용에 대한 Deny 설정을 하여 정책을 생성해 줍니다.

 

S3 Deny 정책 생성

 

 

 

 

[ 3. SCP 연결 ]

 

SCP를 생성했다면 다음과 같이 생성된 SCP를 선택하여 "정책 연결"을 해줍니다.

 

SCP 연결

 

 

 

[ 4. S3 접근 테스트 ]

 

권한 설정이 끝났다면 OU에 속하는 AWS 계정에 접속한 뒤 S3에 접속해 봅니다.

 

그러면 다음과 같이 S3를 사용할 수 없다는 결과를 보여줍니다.

 

S3 접근 불가 확인

 

 

 

해당 접근은 AWS 계정뿐만 아니라 AWS 계정에서 만들어진 모든 IAM 사용자에게도 적용이 됩니다.

 

 

 

 

 

 

 

 

이상으로 Organizations로 계정 관리하는 방법에 대해 간단하게 알아보는 시간이었습니다.

 

읽어주셔서 감사합니다.

 

 

 

728x90
반응형

댓글