

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

# `AWSSupport-ConfigureS3ReplicationSameAndCrossAccount`
<a name="automation-aws-configures3replicationsameandcrossaccount"></a>

 **설명** 

`AWSSupport-ConfigureS3ReplicationSameAndCrossAccount` 자동화 실행서는 동일한 계정 또는 교차 계정에 대해 소스 버킷과 대상 버킷 간의 Amazon Simple Storage Service(Amazon S3) 버킷 복제를 구성합니다. 이 자동화는 Amazon S3-Managed 키를 사용한 서버 측 암호화(SSE-S3) 및 AWS Key Management Service (SSE-KMS)를 사용한 서버 측 암호화로 암호화된 버킷의 복제를 지원합니다. 또한 접두사 및 태그 기반 선택적 복제 필터링, 15분 SLA를 사용하는 Amazon S3 복제 시간 제어(Amazon S3 RTC) 및 삭제 마커 복제를 지원합니다. 자동화는 다음 작업을 수행합니다.
+ 입력 파라미터 및 버킷 구성의 호환성을 검증합니다.
+ 소스 버킷과 대상 버킷 모두에 대한 암호화 설정을 확인합니다.
+ 입력으로 제공되지 않은 경우 복제에 대한 적절한 권한이 있는 새 AWS Identity and Access Management (IAM) 역할을 생성합니다.
+ 지정된 파라미터(접두사, 태그 또는 전체 버킷)를 기반으로 복제 규칙을 구성합니다.
+ 아직 활성화되지 않은 경우 버킷 버전 관리를 활성화합니다.
+ 복제 시간 제어(RTC) 및 삭제 마커 복제와 같은 선택적 기능을 사용하여 복제 구성을 설정합니다.

**중요**  
**이 자동화는 기존 복제 규칙이 있는 버킷을 지원하지 않습니다.** 소스 버킷에는 기존 복제 구성이 없어야 합니다.
**이 자동화는 S3ReplicationRole 입력이 제공되지 않은 경우 복제에 대한 적절한 권한이 있는 새 IAM 역할을 생성합니다**. S3ReplicationRole 
**이 자동화는 기존 객체를 복제하지 않습니다.** Amazon S3 복제는 복제 구성이 활성화된 후 업로드/생성된 객체에만 적용됩니다.
교차 계정 복제의 경우 대상 계정의 IAM 역할에 Amazon S3 작업 및 AWS KMS 작업에 대한 적절한 권한을 제공해야 합니다(버킷이 AWS KMS 암호화를 사용하는 경우).
이 자동화는 지정된 보안 주체가 구성 변경을 승인할 때까지 실행을 일시적으로 일시 중지하는 `aws:approve` 작업을 사용합니다. 자세한 내용은 [승인자를 사용하여 자동화 실행을 참조하세요](https://docs.aws.amazon.com//systems-manager/latest/userguide/running-automations-require-approvals.html).

 **어떻게 작동하나요?**

실행서는 다음 단계를 수행합니다.
+ **ValidateInputParameters**: 모든 입력 파라미터의 정확성과 호환성을 검증하여 적절한 복제 구성을 보장합니다.
+ **PrepareApprovalMessage**: 사용자 검토를 위해 모든 복제 구성 파라미터가 포함된 승인 메시지를 준비합니다.
+ **RequestApproval**: 소스 버킷에 Amazon S3 복제 구성을 추가하기 전에 승인된 사용자에게 승인을 요청합니다.
+ **CheckBucketEncryption**: 소스 및 대상 Amazon S3 버킷 모두에 대한 암호화 구성을 확인하여 호환되는 복제 설정을 결정합니다.
+ **BranchOnEncryptionType**: Amazon S3 버킷 암호화 유형을 기반으로 실행을 분기하여 SSE-S3 또는 SSE-KMS 암호화 버킷에 적절한 복제 구성을 적용합니다.
+ **ConfigureSSES3Replication**: IAM 역할 및 복제 규칙을 포함하여 Amazon S3 S3-Managed3 복제를 구성합니다.
+ **ConfigureSSEKMSReplication**: IAM 역할, KMS 키 권한 및 복제 규칙을 포함하여 AWS KMS (SSE-KMS)를 사용한 서버 측 암호화로 암호화된 버킷에 대해 Amazon S3 복제를 구성합니다.
+ **CleanupResources**: S3ReplicationRole이 입력으로 제공되지 않을 때 실패한 복제 구성 중에 생성된 IAM 역할을 정리합니다.

 [이 자동화 실행(콘솔)](https://console.aws.amazon.com/systems-manager/automation/execute/AWSSupport-ConfigureS3ReplicationSameAndCrossAccount) 

**필수 IAM 권한**

실행서를 성공적으로 사용하려면 `AutomationAssumeRole` 파라미터에 다음 작업이 필요합니다.
+ s3:ListBucket
+ s3:GetBucketVersioning
+ s3:GetEncryptionConfiguration
+ s3:GetBucketLocation
+ s3:GetReplicationConfiguration
+ s3:PutBucketVersioning
+ s3:PutReplicationConfiguration
+ iam:ListRoles
+ iam:GetRole
+ iam:GetRolePolicy
+ iam:ListRoleTags
+ iam:ListAttachedRolePolicies
+ iam:ListRolePolicies
+ iam:SimulatePrincipalPolicy
+ iam:CreateRole
+ iam:TagRole
+ iam:PassRole
+ iam:DeleteRole
+ iam:DeleteRolePolicy
+ iam:DetachRolePolicy
+ iam:PutRolePolicy
+ sts:GetCallerIdentity
+ sns:Publish
+ kms:GetKeyPolicy(버킷이 SSE-KMS를 사용하는 경우, 동일 계정 복제)
+ kms:DescribeKey(버킷이 SSE-KMS, 동일 계정 복제를 사용하는 경우)
+ kms:PutKeyPolicy(버킷이 SSE-KMS, 동일 계정 복제를 사용하는 경우)
+ sts:AssumeRole(교차 계정 복제용)

**CrossAccountReplicationRole(교차 계정 시나리오의 경우):**

교차 계정 복제의 경우 대상 계정의 CrossAccountReplicationRole에 다음 권한을 제공해야 합니다.
+ s3:ListBucket
+ s3:GetBucketVersioning
+ s3:GetBucketLocation
+ s3:GetBucketPolicy
+ s3:GetEncryptionConfiguration
+ s3:PutBucketVersioning
+ s3:PutBucketPolicy
+ kms:GetKeyPolicy(교차 계정 대상 버킷이 SSE-KMS를 사용하는 경우)
+ kms:DescribeKey(교차 계정 대상 버킷이 SSE-KMS를 사용하는 경우)
+ kms:PutKeyPolicy(교차 계정 대상 버킷이 SSE-KMS를 사용하는 경우)

**S3ReplicationRole(고객 제공 역할):**

기존 S3ReplicationRole을 제공하는 경우 다음 권한이 있어야 합니다.
+ s3:ListBucket
+ s3:GetBucketLocation
+ s3:GetReplicationConfiguration
+ s3:GetObjectVersionAcl
+ s3:GetObjectVersionTagging
+ s3:GetObjectVersionForReplication
+ s3:GetObjectTagging
+ s3:ReplicateObject
+ s3:ReplicateDelete
+ s3:ReplicateTags
+ s3:ObjectOwnerOverrideToBucketOwner
+ kms:Decrypt(SSE-KMS 시나리오의 경우 소스 KMS 키)
+ kms:Encrypt(SSE-KMS 시나리오의 경우 대상 KMS 키)
+ kms:GenerateDataKey(SSE-KMS 시나리오의 경우 대상 KMS 키)
+ kms:ReEncrypt\$1(SSE-KMS 시나리오의 경우 대상 KMS 키)

**동일 계정 복제**를 위한 **AutomationAssumeRole** 정책 예제:

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "S3Permissions",
            "Effect": "Allow",
            "Action": [
                "s3:GetBucketVersioning",
                "s3:GetEncryptionConfiguration",
                "s3:GetBucketLocation",
                "s3:GetReplicationConfiguration",
                "s3:ListBucket",
                "s3:PutBucketVersioning",
                "s3:PutReplicationConfiguration"
            ],
            "Resource": [
                "arn:aws:s3:::SOURCE_BUCKET",
                "arn:aws:s3:::DESTINATION_BUCKET"
            ]
        },
        {
            "Sid": "IAMReadOperations",
            "Effect": "Allow",
            "Action": [
                "iam:GetRole",
                "iam:GetRolePolicy",
                "iam:ListRoleTags",
                "iam:ListAttachedRolePolicies",
                "iam:ListRolePolicies",
                "iam:SimulatePrincipalPolicy"
            ],
            "Resource": "*"
        },
        {
            "Sid": "IAMListRolesForCleanup",
            "Effect": "Allow",
            "Action": "iam:ListRoles",
            "Resource": "*"
        },
        {
            "Sid": "IAMCreateAndTagRole",
            "Effect": "Allow",
            "Action": [
                "iam:CreateRole",
                "iam:TagRole"
            ],
            "Resource": "arn:aws:iam::ACCOUNT_ID:role/S3RepRole-*",
            "Condition": {
                "StringLike": {
                    "aws:RequestTag/AWSSupport-ConfigureS3ReplicationSameAndCrossAccount": "*"
                }
            }
        },
        {
            "Sid": "IAMPassRole",
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "arn:aws:iam::ACCOUNT_ID:role/S3RepRole-*",
            "Condition": {
                "StringEquals": {
                    "iam:PassedToService": "s3.amazonaws.com"
                }
            }
        },
        {
            "Sid": "TaggedIAMRoleModifyAndDeleteOperations",
            "Effect": "Allow",
            "Action": [
                "iam:DeleteRole",
                "iam:DeleteRolePolicy",
                "iam:DetachRolePolicy",
                "iam:PutRolePolicy"
            ],
            "Resource": "arn:aws:iam::ACCOUNT_ID:role/S3RepRole-*",
            "Condition": {
                "StringLike": {
                    "aws:ResourceTag/AWSSupport-ConfigureS3ReplicationSameAndCrossAccount": "*"
                }
            }
        },
        {
            "Sid": "STSGetCallerIdentity",
            "Effect": "Allow",
            "Action": "sts:GetCallerIdentity",
            "Resource": "*"
        },
        {
            "Sid": "SNSPublish",
            "Effect": "Allow",
            "Action": "sns:Publish",
            "Resource": "SNS_TOPIC_ARN"
        },
        {
            "Sid": "KMSKeyReadOperations",
            "Effect": "Allow",
            "Action": [
                "kms:GetKeyPolicy",
                "kms:DescribeKey"
            ],
            "Resource": [
                "arn:aws:kms:REGION:ACCOUNT_ID:key/SOURCE_KMS_KEY_ID",
                "arn:aws:kms:REGION:ACCOUNT_ID:key/DESTINATION_KMS_KEY_ID"
            ]
        },
        {
            "Sid": "KMSKeyMutatingOperations",
            "Effect": "Allow",
            "Action": "kms:PutKeyPolicy",
            "Resource": [
                "arn:aws:kms:REGION:ACCOUNT_ID:key/SOURCE_KMS_KEY_ID",
                "arn:aws:kms:REGION:ACCOUNT_ID:key/DESTINATION_KMS_KEY_ID"
            ],
            "Condition": {
                "StringEquals": {
                    "kms:CallerAccount": "ACCOUNT_ID"
                }
            }
        }
    ]
}
```

**참고**  
정책 설명(KMSKeyReadOperations 및 KMSKeyMutatingOperations)은 버킷이 SSE-KMS 암호화를 사용하는 경우에만 필요합니다.

**교차 계정 복제**를 위한 **AutomationAssumeRole** 정책 예제:

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "S3SourceBucketOperations",
            "Effect": "Allow",
            "Action": [
                "s3:GetBucketVersioning",
                "s3:GetEncryptionConfiguration",
                "s3:GetBucketLocation",
                "s3:GetReplicationConfiguration",
                "s3:ListBucket",
                "s3:PutBucketVersioning",
                "s3:PutReplicationConfiguration"
            ],
            "Resource": "arn:aws:s3:::SOURCE_BUCKET"
        },
        {
            "Sid": "IAMReadOperations",
            "Effect": "Allow",
            "Action": [
                "iam:GetRole",
                "iam:GetRolePolicy",
                "iam:ListRoleTags",
                "iam:ListAttachedRolePolicies",
                "iam:ListRolePolicies",
                "iam:SimulatePrincipalPolicy"
            ],
            "Resource": "*"
        },
        {
            "Sid": "IAMListRolesForCleanup",
            "Effect": "Allow",
            "Action": "iam:ListRoles",
            "Resource": "*"
        },
        {
            "Sid": "IAMCreateAndTagRole",
            "Effect": "Allow",
            "Action": [
                "iam:CreateRole",
                "iam:TagRole"
            ],
            "Resource": "arn:aws:iam::SOURCE_ACCOUNT_ID:role/S3RepRole-*",
            "Condition": {
                "StringLike": {
                    "aws:RequestTag/AWSSupport-ConfigureS3ReplicationSameAndCrossAccount": "*"
                }
            }
        },
        {
            "Sid": "IAMPassRole",
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "arn:aws:iam::SOURCE_ACCOUNT_ID:role/S3RepRole-*",
            "Condition": {
                "StringEquals": {
                    "iam:PassedToService": "s3.amazonaws.com"
                }
            }
        },
        {
            "Sid": "TaggedIAMRoleModifyAndDeleteOperations",
            "Effect": "Allow",
            "Action": [
                "iam:DeleteRole",
                "iam:DeleteRolePolicy",
                "iam:DetachRolePolicy",
                "iam:PutRolePolicy"
            ],
            "Resource": "arn:aws:iam::SOURCE_ACCOUNT_ID:role/S3RepRole-*",
            "Condition": {
                "StringLike": {
                    "aws:ResourceTag/AWSSupport-ConfigureS3ReplicationSameAndCrossAccount": "*"
                }
            }
        },
        {
            "Sid": "CrossAccountRoleAssumption",
            "Effect": "Allow",
            "Action": "sts:AssumeRole",
            "Resource": "CROSS_ACCOUNT_REPLICATION_ROLE_ARN"
        },
        {
            "Sid": "STSGetCallerIdentity",
            "Effect": "Allow",
            "Action": "sts:GetCallerIdentity",
            "Resource": "*"
        },
        {
            "Sid": "SNSPublish",
            "Effect": "Allow",
            "Action": "sns:Publish",
            "Resource": "SNS_TOPIC_ARN"
        },
        {
            "Sid": "KMSSourceKeyReadOperations",
            "Effect": "Allow",
            "Action": [
                "kms:GetKeyPolicy",
                "kms:DescribeKey"
            ],
            "Resource": "arn:aws:kms:SOURCE_REGION:SOURCE_ACCOUNT_ID:key/SOURCE_KMS_KEY_ID"
        },
        {
            "Sid": "KMSSourceKeyMutatingOperations",
            "Effect": "Allow",
            "Action": "kms:PutKeyPolicy",
            "Resource": "arn:aws:kms:SOURCE_REGION:SOURCE_ACCOUNT_ID:key/SOURCE_KMS_KEY_ID",
            "Condition": {
                "StringEquals": {
                    "kms:CallerAccount": "SOURCE_ACCOUNT_ID"
                }
            }
        }
    ]
}
```

**참고**  
정책 설명(KMSSourceKeyReadOperations 및 KMSSourceKeyMutatingOperations)은 소스 버킷이 SSE-KMS 암호화를 사용하는 경우에만 필요합니다.
CROSS\$1ACCOUNT\$1REPLICATION\$1ROLE\$1ARN을 자동화에 제공한 실제 CrossAccountReplicationRole 파라미터 값으로 바꿉니다.

**CrossAccountReplicationRole** 정책 예제:

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "S3DestinationBucketReadOperations",
            "Effect": "Allow",
            "Action": [
                "s3:GetBucketVersioning",
                "s3:GetBucketLocation",
                "s3:GetBucketPolicy",
                "s3:GetEncryptionConfiguration",
                "s3:ListBucket",
                "s3:PutBucketVersioning",
                "s3:PutBucketPolicy"
            ],
            "Resource": "arn:aws:s3:::DESTINATION_BUCKET"
        },
        {
            "Sid": "KMSDestinationKeyReadOperations",
            "Effect": "Allow",
            "Action": [
                "kms:GetKeyPolicy",
                "kms:DescribeKey"
            ],
            "Resource": "arn:aws:kms:DESTINATION_REGION:DESTINATION_ACCOUNT_ID:key/DESTINATION_KMS_KEY_ID"
        },
        {
            "Sid": "KMSDestinationKeyMutatingOperations",
            "Effect": "Allow",
            "Action": "kms:PutKeyPolicy",
            "Resource": "arn:aws:kms:DESTINATION_REGION:DESTINATION_ACCOUNT_ID:key/DESTINATION_KMS_KEY_ID",
            "Condition": {
                "StringEquals": {
                    "kms:CallerAccount": "DESTINATION_ACCOUNT_ID"
                }
            }
        }
    ]
}
```

**참고**  
KMS 문(KMSDestinationKeyReadOperations 및 KMSDestinationKeyMutatingOperations)은 대상 버킷이 SSE-KMS 암호화를 사용하는 경우에만 필요합니다. SSE-S3 시나리오에 대한 다음 문을 제거합니다.

CrossAccountReplicationRole 신뢰 정책 예제:

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "AWS": "AUTOMATION_ASSUME_ROLE_ARN"
            },
            "Action": "sts:AssumeRole"
        }
    ]
}
```

**참고**  
AUTOMATION\$1ASSUME\$1ROLE\$1ARN을 자동화에 제공한 실제 AutomationAssumeRole 파라미터 값으로 바꿉니다.

**S3ReplicationRole** 정책의 예:

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "S3SourceBucketPermissions",
            "Effect": "Allow",
            "Action": [
                "s3:ListBucket",
                "s3:GetBucketLocation",
                "s3:GetReplicationConfiguration",
                "s3:GetObjectVersionAcl",
                "s3:GetObjectVersionTagging",
                "s3:GetObjectVersionForReplication",
                "s3:GetObjectTagging"
            ],
            "Resource": [
                "arn:aws:s3:::SOURCE_BUCKET",
                "arn:aws:s3:::SOURCE_BUCKET/*"
            ]
        },
        {
            "Sid": "S3DestinationBucketPermissions",
            "Effect": "Allow",
            "Action": [
                "s3:ReplicateObject",
                "s3:ReplicateDelete",
                "s3:ReplicateTags"
            ],
            "Resource": "arn:aws:s3:::DESTINATION_BUCKET/*"
        },
        {
            "Sid": "S3CrossAccountPermissions",
            "Effect": "Allow",
            "Action": "s3:ObjectOwnerOverrideToBucketOwner",
            "Resource": "arn:aws:s3:::DESTINATION_BUCKET/*"
        },
        {
            "Sid": "KMSSourceKeyPermissions",
            "Effect": "Allow",
            "Action": "kms:Decrypt",
            "Resource": "arn:aws:kms:SOURCE_REGION:SOURCE_ACCOUNT_ID:key/SOURCE_KMS_KEY_ID"
        },
        {
            "Sid": "KMSDestinationKeyPermissions",
            "Effect": "Allow",
            "Action": [
                "kms:Encrypt",
                "kms:GenerateDataKey",
                "kms:ReEncrypt*"
            ],
            "Resource": "arn:aws:kms:DESTINATION_REGION:DESTINATION_ACCOUNT_ID:key/DESTINATION_KMS_KEY_ID"
        }
    ]
}
```

**참고**  
KMS 문(KMSSourceKeyPermissions 및 KMSDestinationKeyPermissions)은 버킷이 SSE-KMS 암호화를 사용하는 경우에만 필요합니다.
S3CrossAccountPermissions 문은 교차 계정 버킷 복제에만 필요합니다.

S3ReplicationRole 신뢰 정책 예:

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "s3.amazonaws.com"
            },
            "Action": "sts:AssumeRole"
        }
    ]
}
```

 **지침** 

다음 단계에 따라 자동화를 구성합니다.

1. Systems Manager[https://console.aws.amazon.com/systems-manager/documents/AWSSupport-ConfigureS3ReplicationSameAndCrossAccount/description](https://console.aws.amazon.com/systems-manager/documents/AWSSupport-ConfigureS3ReplicationSameAndCrossAccount/description)의 문서로 이동합니다.

1. **Execute automation(자동화 실행)**을 선택합니다.

1. 입력 파라미터에 다음을 입력합니다.
   + **AutomationAssumeRole(필수):**
     + 설명: (필수) Systems Manager Automation이 사용자를 대신하여 작업을 수행하도록 허용하는 (IAM) 역할의 Amazon 리소스 이름 AWS Identity and Access Management (ARN)입니다. 역할을 지정하지 않은 경우, Systems Manager Automation에서는 이 실행서를 시작하는 사용자의 권한을 사용합니다.
     + 유형: `AWS::IAM::Role::Arn`
   + **SourceBucket(필수):**
     + 설명: (필수) 복제 규칙을 생성하거나 업데이트할 소스 Amazon S3 버킷의 이름입니다.
     + 유형: `AWS::S3::Bucket::Name`
   + **DestinationBucket(필수):**
     + 설명: (필수) 객체를 복제할 대상 Amazon S3 버킷의 이름입니다.
     + 유형: `String`
     + 허용된 패턴: `^[0-9a-z][a-z0-9\\-\\.]{3,63}$`
   + **SourceAccountId(필수):**
     + 설명: (필수) 소스 버킷이 위치한 AWS 계정 ID입니다.
     + 유형: `String`
     + 허용된 패턴: `^[0-9]{12,13}$`
   + **DestinationAccountId(필수):**
     + 설명: (필수) 대상 버킷이 위치한 AWS 계정 ID입니다.
     + 유형: `String`
     + 허용된 패턴: `^[0-9]{12,13}$`
   + **SnsNotificationArn(필수):**
     + 설명: (필수) 자동화 승인을 위한 Amazon Simple Notification Service(Amazon SNS) 주제의 ARN입니다.
     + 유형: `String`
     + 허용된 패턴: `^arn:(aws|aws-cn|aws-us-gov|aws-iso(-[a-z])?):sns:[a-z]{2}(-gov)?(-iso[a-z]?)?-[a-z]{2,10}-[0-9]{1,2}:\\d{12}:[0-9a-zA-Z-_]{1,256}(.fifo)?$`
   + **승인자(필수):**
     + 설명: (필수) 자동화 실행을 승인할 권한이 있는 IAM 사용자/역할 ARNs 목록입니다.
     + 유형: `StringList`
     + 허용된 패턴: `^arn:(aws|aws-cn|aws-us-gov|aws-iso(-[a-z])?):iam::\\d{12}:(user|role)/[\\w+=,.@\\-/]+$`
   + **S3ReplicationRole(선택 사항):**
     + 설명: (선택 사항) Amazon S3 복제 작업에 사용할 기존 IAM 역할의 ARN입니다. 이 역할에는 버킷이 SSE-KMS 암호화를 사용하는 경우 KMS 권한을 포함하여 소스 버킷에서 읽고 대상 버킷에 쓸 수 있는 권한이 있어야 합니다. 제공되지 않은 경우 자동화는 적절한 권한이 있는 새 역할을 생성합니다.
     + 유형: `String`
     + 허용된 패턴: `^$|^arn:(aws|aws-cn|aws-us-gov|aws-iso(-[a-z])?):iam::\\d{12}:role/[\\w+=,.@\\-/]+$`
     + 기본값: `""`
   + **CrossAccountReplicationRole(선택 사항):**
     + 설명: (선택 사항) 자동화가 수임할 수 있는 대상 계정의 IAM 역할 ARN입니다. 이는 교차 계정 복제에 필요합니다. 동일 계정 복제의 경우 비워 둡니다.
     + 유형: `String`
     + 허용된 패턴: `^$|^arn:(aws|aws-cn|aws-us-gov|aws-iso(-[a-z])?):iam::\\d{12}:role/[\\w+=,.@\\-/]+$`
     + 기본값: `""`
   + **ReplicateEntireBucket(선택 사항):**
     + 설명: (선택 사항) 로 설정하면 `true`전체 버킷이 복제되고 접두사와 태그가 모두 비어 있어야 합니다. false인 경우 복제는 지정된 접두사 또는 태그를 기반으로 합니다.
     + 유형: `Boolean`
     + 허용된 값: `[true, false]`
     + 기본값: `true`
   + **ReplicationRuleStatus(선택 사항):**
     + 설명: (선택 사항) 로 설정하면 생성된 `true`복제 규칙이 활성화됩니다. 로 설정하면 생성된 `false`복제 규칙이 **비활성화됨**으로 설정됩니다.
     + 유형: `Boolean`
     + 허용된 값: `[true, false]`
     + 기본값: `true`
   + **DeleteMarkerReplicationStatus(선택 사항):**
     + 설명: (선택 사항) 로 설정하면 자동화`true`가 삭제 마커 복제를 활성화합니다.
     + 유형: `Boolean`
     + 허용된 값: `[true, false]`
     + 기본값: `false`
   + **ReplicationTimeControl(선택 사항):**
     + 설명: (선택 사항) 로 설정하면 예측 가능한 복제 시간을 위해 15분 SLA로 Amazon S3 Replication Time Control(Amazon S3 RTC)을 `true`활성화합니다.
     + 유형: `Boolean`
     + 허용된 값: `[true, false]`
     + 기본값: `false`
   + **ReplicaModifications(선택 사항):**
     + 설명: (선택 사항) 로 설정하면 복제본 객체에 대한 메타데이터 변경 사항을 `true`복제할 수 있으므로 복제된 객체에 대한 수정 사항을 소스와 다시 동기화할 수 있습니다.
     + 유형: `Boolean`
     + 허용된 값: `[true, false]`
     + 기본값: `false`
   + **접두사(선택 사항):**
     + 설명: (선택 사항) 특정 키 접두사가 있는 객체의 선택적 복제를 위한 접두사 필터입니다. 적절한 Amazon S3 접두사 필터링을 위해 접두사는 후행 슬래시(/)로 끝나야 합니다.
     + 유형: `String`
     + 허용된 패턴: `^$|^[a-zA-Z0-9!_'()\\-]*/+$`
     + 기본값: `""`
   + **태그(선택 사항):**
     + 설명: (선택 사항) 복제할 객체를 필터링하기 위한 태그의 JSON 배열입니다. 단일 태그 형식: [\$1"Key":"TagKey","Value":"TagValue"\$1] 및 여러 태그 형식: [\$1"Key":"TagKey1","Value":"TagValue1"\$1,\$1"Key":"TagKey2","Value":"TagValue2"\$1].
     + 유형: `String`
     + 허용된 패턴: `^\\[((\\{\"Key\":\"[a-zA-Z0-9+\\-=.:/ @\\s]{1,128}\",\"Value\":\"[a-zA-Z0-9+\\-=.:/@\\s]{0,256}\"\\})(,\\{\"Key\":\"[a-zA-Z0-9+\\-=.:/ @\\s]{1,128}\",\"Value\":\"[a-zA-Z0-9+\\-=.:/@\\s]{0,256}\"\\})*)?\\]$`
     + 기본값: `[]`

1. **실행**을 선택합니다.

1. 자동화가 시작됩니다.

1. 문서는 다음 단계를 수행합니다.
   + **ValidateInputParameters**:

     모든 입력 파라미터의 정확성과 호환성을 검증하여 적절한 복제 구성을 보장합니다.
   + **PrepareApprovalMessage**:

     사용자 검토를 위한 모든 복제 구성 파라미터가 포함된 승인 메시지를 준비합니다.
   + **RequestApproval**:

     Amazon S3 복제 구성 변경을 진행하기 전에 승인된 사용자에게 승인을 요청합니다.
   + **CheckBucketEncryption**:

     호환되는 복제 설정을 결정하기 위해 소스 및 대상 Amazon S3 버킷 모두에 대한 암호화 구성을 확인합니다.
   + **BranchOnEncryptionType**:

     Amazon S3 버킷 암호화 유형을 기반으로 실행을 분기하여 SSE-S3 또는 SSE-KMS 암호화 버킷에 적절한 복제 구성을 적용합니다.
   + **ConfigureSSES3Replication**:

     IAM 역할 및 복제 규칙을 포함하여 Amazon S3 S3-Managed3 복제를 구성합니다.
   + **ConfigureSSEKMSReplication**:

     IAM 역할, KMS 키 권한 및 복제 규칙을 포함하여 AWS KMS (SSE-KMS)를 사용한 서버 측 암호화로 암호화된 버킷에 대해 Amazon S3 복제를 구성합니다.
   + **CleanupResources**:

     고객이 S3ReplicationRole을 제공하지 않은 경우 실패한 복제 구성 중에 생성된 IAM 역할을 정리합니다.

1. 완료되면 **ConfigureSSES3Replication** 단계(SSE-S3 암호화 버킷의 경우) 또는 **ConfigureSSEKMSReplication** 단계(SSE-KMS 암호화 버킷의 경우)의 출력을 검토하여 복제에 사용되는 IAM 역할과 함께 복제 구성 상태를 포함한 실행 결과를 확인합니다.

**참조**

Systems Manager Automation
+ [이 자동화 실행(콘솔)](https://console.aws.amazon.com/systems-manager/documents/AWSSupport-ConfigureS3ReplicationSameAndCrossAccount/description)
+ [자동화 실행](https://docs.aws.amazon.com//systems-manager/latest/userguide/automation-working-executing.html)
+ [Automation 설정](https://docs.aws.amazon.com//systems-manager/latest/userguide/automation-setup.html)
+ [자동화 워크플로 지원](https://aws.amazon.com/premiumsupport/technology/saw/)