1단계: 랜딩 존 구성 - AWS Control Tower

1단계: 랜딩 존 구성

AWS Control Tower 랜딩 존을 설정하는 프로세스에는 여러 단계가 있습니다. AWS Control Tower 랜딩 존의 특정 측면은 구성 가능하지만 설정 후에는 다른 선택 사항을 변경할 수 없습니다. 랜딩 존을 시작하기 전에 이러한 중요한 고려 사항에 대해 자세히 알아보려면 랜딩 존 구성에 대한 기대 사항 섹션을 검토하세요.

AWS Control Tower 랜딩 존 API 사용하기 전에 먼저 다른 AWS 서비스의 API를 호출하여 시작 전에 랜딩 존을 구성해야 합니다. 프로세스에는 세 가지 주요 단계가 있습니다.

  • 새 AWS Organizations 조직 생성,

  • 공유 계정 이메일 주소 설정,

  • 및 랜딩 존 API를 직접적으로 호출하는 데 필요한 권한을 가진 IAM 역할 또는 IAM Identity Center 사용자 생성.

단계 1. 랜딩 존을 포함할 조직을 생성합니다.

  1. AWS Organizations CreateOrganization API를 호출하고 모든 기능을 활성화하여 기본 OU를 생성합니다. AWS Control Tower는 처음에 이를 보안 OU로 명명합니다. 이 보안 OU에는 기본적으로 로그 아카이브 계정과 감사 계정이라고 하는 두 개의 공유 계정이 포함되어 있습니다.

    aws organizations create-organization --feature-set ALL

    AWS Control Tower는 하나 이상의 추가 OU를 설정할 수 있습니다. 보안 OU 외에 랜딩 존에 하나 이상의 추가 OU를 프로비저닝하는 것이 좋습니다. 이 추가 OU가 개발 프로젝트용인 경우 AWS Control Tower 랜딩 존에 대한 AWS 다중 계정 전략에 나와 있는 대로 샌드박스 OU라는 이름을 지정하는 것이 좋습니다.

단계 2. 필요한 경우 공유 계정 프로비저닝:

랜딩 존을 설정하려면 AWS Control Tower에 두 개의 이메일 주소가 필요합니다. 랜딩 존 API를 사용하여 AWS Control Tower를 처음 설정하는 경우 기존 보안 및 로그 아카이브 AWS 계정을 사용해야 합니다. 기존 AWS 계정의 현재 이메일 주소를 사용할 수 있습니다. 이러한 각 이메일 주소는 AWS Control Tower와 관련된 특정 작업을 수행할 엔터프라이즈의 다양한 사용자를 위한 공동 작업 받은 편지함인 공유 이메일 계정의 역할을 합니다.

새 랜딩 존 설정을 시작하려면 기존 AWS 계정이 없는 경우 AWS Organizations API를 사용하여 보안 및 로그 아카이브 AWS 계정을 프로비저닝할 수 있습니다.

  1. AWS Organizations CreateAccount API를 직접적으로 호출하여 보안 OU에서 로그 아카이브 계정 및 감사 계정을 생성합니다.

    aws organizations create-account --email mylog@example.com --account-name "Logging Account"
    aws organizations create-account --email mysecurity@example.com --account-name "Security Account"
  2. (선택 사항) AWS Organizations DescribeAccount API를 사용하여 CreateAccount 작업 상태를 확인합니다.

단계 3. 필요한 서비스 역할 생성

AWS Control Tower가 랜딩 존을 설정하는 데 필요한 API 직접 호출을 수행할 수 있도록 지원하는 다음 IAM 서비스 역할을 생성합니다.

권한 및 정책에 대한 자세한 내용은 AWS Control Tower를 위한 ID 기반 정책(IAM 정책) 사용 섹션을 참조하세요.

IAM 역할 생성:

  1. 모든 랜딩 존 API를 직접적으로 호출하는 데 필요한 권한을 가진 IAM 역할을 생성합니다. 또는 IAM Identity Center 사용자를 생성하고 필요한 권한을 할당할 수 있습니다.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "controltower:CreateLandingZone", "controltower:UpdateLandingZone", "controltower:ResetLandingZone", "controltower:DeleteLandingZone", "controltower:GetLandingZoneOperation", "controltower:GetLandingZone", "controltower:ListLandingZones", "controltower:ListLandingZoneOperations", "controltower:ListTagsForResource", "controltower:TagResource", "controltower:UntagResource", "servicecatalog:*", "organizations:*", "sso:*", "sso-directory:*", "logs:*", "cloudformation:*", "kms:*", "iam:GetRole", "iam:CreateRole", "iam:GetSAMLProvider", "iam:CreateSAMLProvider", "iam:CreateServiceLinkedRole", "iam:ListRolePolicies", "iam:PutRolePolicy", "iam:ListAttachedRolePolicies", "iam:AttachRolePolicy", "iam:DeleteRole", "iam:DeleteRolePolicy", "iam:DetachRolePolicy" ], "Resource": "*" } ] }