반응형
안녕하세요 서후아빠입니다. ^_^
이번 세션은 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 상속 받음 |
IAM Identity Center(=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 진행 |
반응형
'Management' 카테고리의 다른 글
[실습] Control Tower 구성하기 - 2편 (IAM Identity Center = SSO, Okta 연동) (0) | 2023.02.10 |
---|---|
[실습] Control Tower 구성하기 - 1편 (배포, AWS 계정 관리, LifeCycle 이벤트, 메뉴) (0) | 2023.02.10 |
[실습] Telegram Bot or Slack Channel연동하여 CloudWatch Alarm 메시지 받기 (1) | 2023.01.25 |
[실습] AWS Systems Manager (Session Manager, Parameter Store, Run Command)-1편 (0) | 2022.09.23 |
[실습] AWS Trusted Advisor 사용하기 (0) | 2022.09.02 |