

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# AWS Control Tower에서 작업 자동화
<a name="automating-tasks"></a>

많은 고객은 계정 프로비저닝, 제어 할당 및 감사와 같은 AWS Control Tower의 작업을 자동화하는 것을 선호합니다. 다음에 대한 직접 호출을 통해 이러한 자동화된 작업을 설정할 수 있습니다.
+ [AWS Service Catalog API](https://docs.aws.amazon.com//servicecatalog/latest/dg/service-catalog-api-overview.html) 
+ [AWS Organizations API](https://docs.aws.amazon.com//organizations/latest/APIReference/Welcome.html)
+ [AWS Control Tower API](https://docs.aws.amazon.com//controltower/latest/APIReference/Welcome.html)
+ [AWS CLI](https://docs.aws.amazon.com//cli/latest/reference/servicecatalog/index.html)

[추가 정보 및 링크](related-information.md) 페이지에는 AWS Control Tower의 작업을 자동화하는 데 도움이 될 수 있는 여러 유용한 기술 블로그 게시물에 대한 링크가 포함되어 있습니다. 다음 섹션에서는 작업 자동화에 도움이 될 수 있는 이 *AWS Control Tower 사용자 안내서*의 영역에 대한 링크를 제공합니다.

**제어 작업 자동화**

 AWS Control Tower API를 통해 제어(*가드레일*이라고도 함) 적용 및 제거와 관련된 작업을 자동화할 수 있습니다. 자세한 내용은 [AWS Control Tower API 참조](https://docs.aws.amazon.com//controltower/latest/APIReference/Welcome.html)를 참조하세요.

AWS Control Tower API를 사용하여 제어 작업을 수행하는 방법에 대한 자세한 내용은 블로그 게시물 [AWS Control Tower의 API 릴리스를 통해 사전 정의된 제어를 조직 단위에 제공](https://aws.amazon.com//blogs/mt/aws-control-tower-releases-api-pre-defined-controls-to-your-organizational-units/)을 참조하세요.

**랜딩 존 작업 자동화**

AWS Control Tower 랜딩 존 API는 랜딩 존과 관련된 특정 작업을 자동화하는 데 도움이 됩니다. 자세한 내용은 [AWS Control Tower API 참조](https://docs.aws.amazon.com//controltower/latest/APIReference/Welcome.html)를 참조하세요.

**OU 등록 자동화**

AWS Control Tower 기준 API는 OU 등록과 같은 특정 작업을 자동화하는 데 도움이 됩니다. 자세한 내용은 [AWS Control Tower API 참조](https://docs.aws.amazon.com//controltower/latest/APIReference/Welcome.html)를 참조하세요.

**자동 계정 해지**

 AWS Organizations API를 사용하여 AWS Control Tower 멤버 계정의 해지를 자동화할 수 있습니다. 자세한 내용은 [를 통해 AWS Control Tower 멤버 계정 닫기 AWS Organizations](delete-account.md#close-account-with-orgs-api) 단원을 참조하십시오.

**자동 계정 프로비저닝 및 업데이트**

*AWS Control Tower Account Factory Customization(AFC)*을 사용하면 청사진이라고 하는 사용자 지정 CloudFormation 템플릿을 사용하여 AWS Control Tower 콘솔에서 계정을 생성할 수 있습니다. 이 프로세스는 파이프라인을 유지 관리하지 않고도 하나의 블루프린트를 설정한 후 새 계정을 생성하고 계정을 반복적으로 업데이트할 수 있다는 점에서 자동화되어 있습니다.

*AWS Control Tower Account Factory for Terraform*(AFT)은 GitOps 모델을 따라 AWS Control Tower에서 계정 프로비저닝 및 계정 업데이트 프로세스를 자동화합니다. 자세한 내용은 [AWS Control Tower Account Factory for Terraform(AFT)을 사용하여 계정 프로비저닝](taf-account-provisioning.md) 단원을 참조하십시오.

*Customizations for AWS Control Tower*(CfCT)를 사용하면 AWS Control Tower 랜딩 존을 사용자 지정하고 AWS 모범 사례에 맞게 조정할 수 있습니다. 사용자 지정은 AWS CloudFormation 템플릿, 서비스 제어 정책(SCPs) 및 리소스 제어 정책(RCPs. 자세한 내용은 [Customizations for AWS Control Tower(CfCT) 개요](cfct-overview.md) 단원을 참조하십시오.

자동 계정 프로비저닝에 대한 자세한 내용과 동영상은 [연습: AWS Control Tower의 자동 계정 프로비저닝](https://docs.aws.amazon.com//controltower/latest/userguide/automated-provisioning-walkthrough.html) 및 [IAM 역할을 사용한 자동 프로비저닝](https://docs.aws.amazon.com//controltower/latest/userguide/roles-how.html#automated-provisioning)을 참조하세요.

[스크립트로 계정 업데이트](https://docs.aws.amazon.com//controltower/latest/userguide/configuration-updates.html#update-accounts-by-script)도 참조하세요.

**계정의 프로그래밍 방식 감사**

프로그래밍 방식으로 계정을 감사하는 방법에 대한 자세한 내용은 [AWS Control Tower 감사 계정에 대한 프로그래밍 방식 역할 및 신뢰 관계](https://docs.aws.amazon.com//controltower/latest/userguide/roles-how.html#stacksets-and-roles)를 참조하세요.

**다른 작업 자동화**

자동 요청 방법을 사용하여 특정 AWS Control Tower 서비스 할당량을 늘리는 방법에 대한 자세한 내용은 동영상 [Automate Service Limit Increases](https://www.youtube.com/watch?v=3WUShZ4lZGE)를 참조하세요.

자동화 및 통합 사용 사례를 다루는 기술 블로그는 [자동화 및 통합](https://docs.aws.amazon.com/controltower/latest/userguide/related-information.html#automation-and-integration)을 참조하세요.

보안과 관련된 특정 자동화 작업에 도움이 되도록 GitHub에서 두 개의 오픈 소스 샘플을 사용할 수 있습니다.
+ [aws-control-tower-org-setup-sample](https://github.com/aws-samples/aws-control-tower-org-setup-sample)이라는 샘플은 보안 관련 서비스의 위임된 관리자로 감사 계정 설정을 자동화하는 방법을 보여줍니다.
+ [aws-control-tower-account-setup-using-step-functions](https://github.com/aws-samples/aws-control-tower-account-setup-using-step-functions)라는 샘플은 새 계정을 프로비저닝하고 구성할 때 Step Functions를 사용하여 보안 모범 사례를 자동화하는 방법을 보여줍니다. 이 샘플에는 조직 공유 AWS Service Catalog 포트폴리오에 보안 주체를 추가하고 조직 전체 AWS 의 IAM Identity Center 그룹을 새 계정에 자동으로 연결하는 작업이 포함됩니다. 또한 모든 리전에서 기본 VPC를 삭제하는 방법도 보여줍니다.

*AWS 보안 참조 아키텍처*에는 AWS Control Tower와 관련된 작업을 자동화하기 위한 코드 예제가 포함되어 있습니다. 자세한 내용은 [AWS 권장 가이드 페이지](https://docs.aws.amazon.com//prescriptive-guidance/latest/security-reference-architecture/welcome.html) 및 [관련 GitHub 리포지토리](https://github.com/aws-samples/aws-security-reference-architecture-examples/tree/main/aws_sra_examples)를 참조하세요.

 AWS CLI에서 작업을 용이하게 하는 AWS 서비스인 AWS CloudShell과 함께 AWS Control Tower를 사용하는 방법에 대한 자세한 내용은 [AWS CloudShell 및 AWS CLI를](https://docs.aws.amazon.com//controltower/latest/userguide/using-aws-with-cloudshell.html) 참조하세요.

AWS Control Tower는 오케스트레이션 계층이므로 APIs 및 AWS CLI를 통해 다른 AWS Organizations많은 AWS 서비스를 사용할 수 있습니다. 자세한 내용은 [관련 AWS 서비스를](https://docs.aws.amazon.com//controltower/latest/userguide/related-information.html#related-aws-services) 참조하세요.

# AWS CloudShell를 사용하여 작업AWS Control Tower
<a name="using-aws-with-cloudshell"></a>

AWS CloudShell는AWS CLI에서 쉽게 작업할 수 있는AWS서비스입니다.에서 직접 시작할 수 있는 사전 인증된 브라우저 기반 셸입니다AWS Management Console. 명령줄 도구를 다운로드하거나 설치할 필요가 없습니다. 원하는 쉘(Bash, PowerShell 또는 Z 쉘)에서AWS Control Tower및 기타AWS서비스에 대한AWS CLI명령을 실행할 수 있습니다.

[에서 시작AWS CloudShellAWS Management Console](https://docs.aws.amazon.com/cloudshell/latest/userguide/working-with-cloudshell.html#launch-options)하면 콘솔에 로그인하는 데 사용한AWS자격 증명을 새 쉘 세션에서 사용할 수 있습니다.AWS Control Tower및 기타AWS서비스와 상호 작용할 때 구성 자격 증명 입력을 건너뛸 수 있으며, 쉘의 컴퓨팅 환경에 사전 설치된AWS CLI버전 2를 사용합니다.는 사전 인증됩니다AWS CloudShell.

## 에 대한 IAM 권한 획득AWS CloudShell
<a name="cloudshell-permissions"></a>

AWS Identity and Access Management는 관리자가 IAM 사용자 및 IAM Identity Center 사용자에게 액세스 권한을 부여할 수 있는 액세스 관리 리소스를 제공합니다AWS CloudShell.

관리자가 사용자에게 액세스 권한을 부여하는 가장 빠른 방법은AWS관리형 정책을 사용하는 것입니다. [AWS관리형 정책](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies)은AWS에서 생성 및 관리하는 독립 실행형 정책입니다. CloudShell에 대한 다음AWS관리형 정책을 IAM 자격 증명에 연결할 수 있습니다.
+ `AWSCloudShellFullAccess`: 모든 기능에 대한 전체 액세스 권한AWS CloudShell과 함께를 사용할 수 있는 권한을 부여합니다.

 IAM 사용자 또는 IAM Identity Center 사용자가 수행할 수 있는 작업 범위를 제한하려면 `AWSCloudShellFullAccess` 관리형 정책을 템플릿으로 사용하는 사용자 지정 정책을 생성할AWS CloudShell수 있습니다. CloudShell에서 사용자가 사용할 수 있는 작업을 제한하는 방법에 대한 자세한 내용은 *AWS CloudShell사용 설명서*의 [IAM 정책을 사용한AWS CloudShell액세스 및 사용 관리를](https://docs.aws.amazon.com/cloudshell/latest/userguide/sec-auth-with-identities.html) 참조하세요.

**참고**  
IAM ID에는AWS Control Tower에 대한 호출 권한을 부여하는 정책도 필요합니다. 자세한 내용은 [AWS Control Tower콘솔을 사용하는 데 필요한 권한을 참조하세요](https://docs.aws.amazon.com//controltower/latest/userguide/access-control-managing-permissions.html#additional-console-required-permissions).

### 시작AWS CloudShell
<a name="launch-cloudshell"></a>

에서 탐색 모음에서 사용할AWS Management Console수 있는 다음 옵션을 선택하여 CloudShell을 시작할 수 있습니다.
+  CloudShell 아이콘을 선택합니다.
+ 검색 상자에 ‘cloudshell’을 입력하고 CloudShell 옵션을 선택합니다.

이제 CloudShell을 시작했으므로 작업에 필요한 모든AWS CLI명령을 입력할 수 있습니다AWS Control Tower. 예를 들어AWS Config상태를 확인할 수 있습니다.

# 를AWS Control Tower통해와 상호 작용AWS CloudShell
<a name="cshell-examples"></a>

AWS CloudShell에서를 시작한 후 명령줄 interface.AWS CLI commands AWS Control Tower에서 즉시 CloudShell의 표준 방식으로와 상호 작용할AWS Management Console수 있습니다.

**참고**  
AWS CLI에서를 사용하는AWS CloudShell경우 추가 리소스를 다운로드하거나 설치할 필요가 없습니다. 또한 쉘 내에서 이미 인증되었기 때문에 직접 호출을 하기 전에 자격 증명을 구성하지 않아도 됩니다.<a name="cloudshell-and-controltower"></a>

# AWS CloudShell를 사용하여 설정 지원AWS Control Tower
<a name="cloudshell-and-controltower"></a>

이러한 절차를 수행하기 전에 달리 명시되지 않는 한 랜딩 존의 홈 리전AWS Management Console에 있는에 로그인해야 하며 랜딩 존이 포함된 관리 계정에 대한 관리 권한이 있는 IAM Identity Center 사용자 또는 IAM 사용자로 로그인해야 합니다.

1. 랜AWS Control Tower딩 존 구성을 시작하기 전에에서AWS Config CLI 명령을 사용하여 구성 레코더 및 전송 채널의 상태를AWS CloudShell확인하는 방법은 다음과 같습니다.

   **예:AWS Config상태 확인**

**보기 명령:**
   + `aws configservice describe-delivery-channels`
   + `aws configservice describe-delivery-channel-status`
   + `aws configservice describe-configuration-recorders`
   + 일반적인 응답은 `"name": "default"`와 같습니다.

1. AWS Control Tower랜딩 존을 설정하기 전에 삭제해야 하는 기존AWS Config레코더 또는 전송 채널이 있는 경우 입력할 수 있는 몇 가지 명령은 다음과 같습니다.

   **예: 기존AWS Config리소스 관리**

**삭제 명령:**
   + `aws configservice stop-configuration-recorder --configuration-recorder-name NAME-FROM-DESCRIBE-OUTPUT`
   + `aws configservice delete-delivery-channel --delivery-channel-name NAME-FROM-DESCRIBE-OUTPUT`
   + `aws configservice delete-configuration-recorder --configuration-recorder-name NAME-FROM-DESCRIBE-OUTPUT`
**중요**  
에 대한AWS Control Tower리소스를 삭제하지 마십시오AWS Config. 이러한 리소스가 손실되면가 일관되지 않은 상태로 전환될 수AWS Control Tower있습니다.

**자세한 내용은AWS Config설명서를 참조하세요.**
   +  [구성 레코더 관리(AWS CLI)](https://docs.aws.amazon.com//config/latest/developerguide/stop-start-recorder.html#managing-recorder_cli)
   +   [전송 채널 관리](https://docs.aws.amazon.com//config/latest/developerguide/manage-delivery-channel.html)

1. 이 예제는 신뢰할 수 있는 액세스를 활성화하거나 비활성화AWS CloudShell하기 위해에서 입력하는AWS CLI 명령을 보여줍니다AWS Organizations. 에 대해 신뢰할 수 있는 액세스를 활성화하거나 비활성화AWS Control Tower할 필요가 없으며AWS Organizations, 이는 예시일 뿐입니다. 그러나 작업을 자동화하거나 사용자 지정하는 경우 다른AWS서비스에 대해 신뢰할 수 있는 액세스를 활성화하거나 비활성화해야 할 수 있습니다AWS Control Tower.

**예제: 신뢰할 수 있는 서비스 액세스 활성화 또는 비활성화**
   + `aws organizations enable-aws-service-access`
   + `aws organizations disable-aws-service-access`<a name="cloudshell-and-s3"></a>

# 예:를 사용하여 Amazon S3 버킷 생성AWS CloudShell
<a name="cloudshell-and-s3"></a>

다음 예제에서는AWS CloudShell를 사용하여 Amazon S3 버킷을 생성한 다음 **PutObject** 메서드를 사용하여 코드 파일을 해당 버킷의 객체로 추가할 수 있습니다.

1. 지정된AWS리전에서 버킷을 생성하려면 CloudShell 명령줄에 다음 명령을 입력합니다.

   ```
   aws s3api create-bucket --bucket insert-unique-bucket-name-here --region us-east-1
   ```

   직접 호출이 성공하면 명령줄에 다음 출력과 비슷한 서비스의 응답이 표시됩니다.

   ```
   {
       "Location": "/insert-unique-bucket-name-here"
   }
   ```
**참고**  
[버킷 이름 지정 규칙](https://docs.aws.amazon.com/AmazonS3/latest/userguide/BucketRestrictions.html#bucketnamingrules)(예: 소문자만 사용)을 준수하지 않으면 다음 오류가 표시됩니다. ‘CreateBucket 작업을 호출하는 동안 오류가 발생했습니다(InvalidBucketName). 지정된 버킷이 유효하지 않습니다.’

1. 파일을 업로드하고 방금 생성한 버킷에 해당 파일을 객체로 추가하려면 **PutObject** 메서드를 직접 호출합니다.

   ```
   aws s3api put-object --bucket insert-unique-bucket-name-here --key add_prog --body add_prog.py
   ```

   객체가 Amazon S3 버킷에 성공적으로 업로드되면 명령줄에 다음 출력과 비슷한 서비스의 응답이 표시됩니다.

   ```
   {
              "ETag": "\"ab123c1:w:wad4a567d8bfd9a1234ebeea56\""}
   ```

   `ETag`는 저장된 객체의 해시입니다. [Amazon S3에 업로드된 객체의 무결성을 확인](https://aws.amazon.com/premiumsupport/knowledge-center/data-integrity-s3/)하는 데 이 해시를 사용할 수 있습니다.

# 를 사용하여 AWS Control Tower 리소스 생성 AWS CloudFormation
<a name="creating-resources-with-cloudformation"></a>

AWS Control Tower 는 AWS 리소스 및 인프라를 생성하고 관리하는 데 소요되는 시간을 줄일 수 있도록 리소스를 모델링하고 설정하는 데 도움이 되는 AWS CloudFormation서비스와 통합됩니다. control. CloudFormation provisions`AWS::ControlTower::EnabledControl`와 같이 원하는 모든 AWS 리소스를 설명하는 템플릿을 생성하고 해당 리소스를 구성합니다.

를 사용하면 템플릿을 재사용하여 AWS Control Tower 리소스를 일관되고 반복적으로 설정할 CloudFormation수 있습니다. 리소스를 한 번 설명한 다음 여러 AWS 계정 및 리전에서 동일한 리소스를 반복적으로 프로비저닝합니다.

## AWS Control Tower 및 CloudFormation 템플릿
<a name="working-with-templates"></a>

 AWS Control Tower 및 관련 서비스에 대한 리소스를 프로비저닝하고 구성하려면 [CloudFormation 템플릿을](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-guide.html) 이해해야 합니다. 템플릿은 JSON 또는 YAML로 서식 지정된 텍스트 파일입니다. 이러한 템플릿은 CloudFormation 스택에서 프로비저닝하려는 리소스를 설명합니다. JSON 또는 YAML에 익숙하지 않은 경우 CloudFormation Designer를 사용하여 CloudFormation 템플릿을 시작할 수 있습니다. 자세한 내용은 *AWS CloudFormation 사용자 안내서*에서 [CloudFormation Designer란?](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/working-with-templates-cfn-designer.html)을 참조하세요.

AWS Control Tower 는에서 `AWS::ControlTower::EnabledControl` (컨트롤 리소스), `AWS::ControlTower::LandingZone` (랜딩 존) 및 `AWS::ControlTower::EnabledBaseline` (기준) 생성을 지원합니다 CloudFormation. 이러한 리소스 유형에 대한 JSON 및 YAML 템플릿의 예제를 포함한 자세한 내용은 *AWS CloudFormation 사용자 안내서*의 [AWS Control Tower](https://docs.aws.amazon.com//AWSCloudFormation/latest/UserGuide/AWS_ControlTower.html)를 참조하세요.

**참고**  
의 `EnableControl`및 `DisableControl` 업데이트 제한은 동시 작업 100개 AWS Control Tower 입니다.

CLI 및 콘솔에 대한 몇 가지 AWS Control Tower 예를 보려면 [를 사용하여 제어 활성화 CloudFormation](https://docs.aws.amazon.com//controltower/latest/userguide/enable-controls.html)를 참조하세요.

## 에 대해 자세히 알아보기 CloudFormation
<a name="learn-more-cloudformation"></a>

에 대해 자세히 알아보려면 다음 리소스를 CloudFormation참조하세요.
+ [AWS CloudFormation](https://aws.amazon.com/cloudformation/)
+ [AWS CloudFormation 사용 설명서](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html)
+ [CloudFormation API 레퍼런스](https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/Welcome.html)
+ [AWS CloudFormation 명령줄 인터페이스 사용 설명서](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/what-is-cloudformation-cli.html)