본문 바로가기

Management

[이론] Control Tower (Organizations, SSO) 기본 개념

반응형

안녕하세요 서후아빠입니다. ^_^

이번 세션은 Control Tower (구. Landing Zone)에 대해서 업무적으로 필요한 최소한의 개념에 대해서 간단히 정리해 보았습니다. 더불어 Control Tower 구현 시 함께 이해가 필요한 AWS Organizations, IAM Identity Center(구. SSO) 등에 대해서도 살펴보도록 하겠습니다. 

 

 


Control Tower 개요

AWS Oranizations를 기반으로 다중 AWS 계정을 중앙집중 관리 : AWS 계정은 OU별로 적절하게 배치

※ Landing Zone : Control Tower 출시 이전에 다중 AWS 계정을 관리하기 위해 도입된 개념

IAM Identity Center를 기반으로 다중 AWS 계정에 대해서 사용자 접근 통제

Management 계정(구. Master 계정)에서 Control Tower 구성하면 "Security OU"에 Log Archive & Audit 계정과 계정별 서비스가 자동 생성

Control Tower로 생성된 서비스들은 수동 조작 시 Control Tower가 정상적으로 동작하지 않을 수 있으므로 주의를 요함.

Control Tower 기능 

AWS 계정(Management, Log Archive, Audit), OU 기본 구성
OU별 SCP에 의한 예방 Control(구. Guardrail) 설정
Config 규칙으로 발견 Control(구. Guardrail) 설정
Config 자동 사용 및 로그 중앙 집중식
CloudTrail 추적 자동 설정 및 로그 중앙 집중식
IAM Identity Center 설정
관리자에게 알림 기능(Config 규칙 미준수를 SNS로 통지)

Control Tower 구성 시 통제 방안

구분 내용
Control Tower의 Controls
(구. Guardrail)
- AWS Organizations에 연결된 AWS 계정의 모든 Resources 통제 및 감시
  ▶ 제어 방식 : 사전 예방, 예방, 탐지
  ▶ 항목별 가이드 : 필수, 권고, 선택
- 보안 관리자 Resources 관리용
AWS Conig의 Aggregators - AWS Organizations에 연결된 AWS 계정의 모든 Resources에 대한 Rules 상태 수집
   ※ AWS 계정별로 Rule 설정 (일괄 설정 불가능)
- 보안 관리자 Resources 관리용
IAM Identity Center의 Permission sets - IAM Group (or User)에게 부여하는 권한
  ▶ Managed policies
  ▶ Customer managed policies
  ▶ Inline policy
  ▶ Permissions boundary
- 사용자 권한 통제용 (AWS 계정에 연결)
AWS Organizations의 Polices - 연결된 OU or AWS 계정 통제
  ▶ Service control polices(SCP, JSON 형식)
  ▶ Tag polices : 특정 key/value 없는 경우 Resources 생성 차단 (단, 통제는 SCP)
- 사용자 권한 통제용
예를들어 위 구성도에서 "Security OU"는 여러 그룹(보안, 네트워크 등)의 협력이 필요한 경우
 - 방법 1 : Permissions sets을 그룹별로 구분하여 적절한 권한 부여
 - 방법 2 : Resource마다 Tagging하여 SCP로 통제 (신규 Resources에 대해서 Tagging 강제화(Tag policies + SCP) 방안 필요)

Control Tower 설계 시 검토할 항목

구분 내용
ID 관리 - 기존 사용 중인 회사 계정을 그대로 사용하고자 할 때 
- 다양한 IDaaS(AD, Azure AD, Okta, OneLogin 등)와 연동하여 SSO 처리
OU / SCP 구성 - OU분리는 SCP 적용 단위
- 중요 데이터 존재하는 환경은 S3 버킷에 대한 공개 읽기 액세스 허용하는 계정과 OU 분리
- 지역 제한 
  ▶ 사용자 추가 SCP로 대응 : 지역 제한 예외 사용자 조정 가능
  ▶ 전세계적으로 서비스하는 환경은 속도 지연 등 부적합
추가 보안 기능 배포 / 운영 - 보안 서비스 (GuardDuty, Security Hub, Detective 등)를 Organizations 이용하여 일괄 배포 고려
- 배포 후, Audit 계정에 관리 위임

AWS Organizations 이해

구분 내용
Management 계정 - AWS 계정 중에 하나를 Management 계정으로 지정 (혹은 승격)
- 보통 Root 밑에 존재
Member 계정 - Management 계정을 제외한 모든 AWS 계정
Organizational Unit (OU) - 부서별 혹은 서비스별로 지정, AWS Cloud 상 OU
Service Control Policy (SCP) - Root와 OU에 연결해 사용자 권한 제한
- 계층적인 구조, 하위 객체는 상위 객체의 SCP 상속 받음

[그림. SCP 권한 상속 개념]
[그림. OU 설계 예시]

IAM Identity Center(=SSO) 이해

[그림. SSO 흐름도]

Security OU : 관리자 외 접근 차단 
User가 "Prod 계정"의 EC2를 접근하기 위해 거쳐가는 통제 수단 
  1. AWS Console 허용 IP
  2. IAM Identity Center의 Permission sets
  3. Production OU의 SCP
  4. Control Tower의 Contorls
  5. Resources 자체의 IAM Role

Landing Zone에서 Control Tower로 Migration 절차 

구분 내용
사전
작업
- Management 계정에서 Control Tower 활성화 및 기본 설정
  ▶ Controls 설정
  IAM Identity Center 설정 (Users, Groups, Permission sets, Settings 등)
- OU 전환에 따른 서비스 장애 방지 위해 AWS RAM으로 공유된 Resources 설정 변경
  방법 1 : OU로 공유된 리소스를 AWS 계정으로 공유 변경
  방법 2
       1) 기존 OU에서 공유한 리소스 설정 백업 (ex : 라우팅 테이블 등)
       2) Management 계정에서 신규 리소스 생성 및 설정, 이관 대상 AWS 계정과 AWS 계정 방식으로 공유
       3) 이관 대상 AWS 계정에서 신규 RAM으로 전환
           ※ 전환 시 순단 발생하며, 스크립트 등을 이용하여 순단 시간 단축
- 이관 대상이 포함된 AWS Organizations
  이관 대상 계정 : Policies를 JSON 형식으로 백업
   활성화된 Services 목록 확인
- 이관 대상 AWS 계정
  계정별 root & password 설정
  OU 변경동안 순단 불가능한 경우는 사전에 IAM User로 접속하도록 가이드
  Control Tower 연결에 대한 IAM Role (AWSControlTowerExecution) 생성
  Billing 묶여있는 계정 경우 : 영업 통해 이관 가능여부 및 문제점 확인
  유효한 결제 방법 구성 : AWS Organizations 분리 시 전제 조건
실행
작업
- Control Tower 설정
  AWS Organizations 마이그레이션 (OU, Service, Policies, Settings 등)
- 이관 대상 AWS 계정
   AWS 계정별 서비스 연결 해제
       1) AWS Organizations에서 활성화된 서비스 목록 확인
       2) “Service Catalog > Portfolios”의 랜딩존 구성 정보에서 연결된 서비스 해제
  AWS 계정별 기존 AWS Organizations에서 분리
- Management 계정에서 AWS Organizations 초대 및 수락
   계정별 서비스 상태 확인하면서 Step by Step 진행
반응형