

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

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

 **描述** 

`AWSSupport-ConfigureS3ReplicationSameAndCrossAccount`自动化运行手册为相同账户或跨账户配置亚马逊简单存储服务 (Amazon S3) Simple Storage Service 在源存储桶和目标存储桶之间复制。此自动化支持复制使用服务器端加密、使用 Amazon S3 托管密钥 (SSE-S3) 和使用 (SSE-KMS) 进行服务器端加密 (SSE-KMS) 加密的存储桶。 AWS Key Management Service 它还支持基于前缀和标签的选择性复制筛选、具有 15 分钟 SLA 的 Amazon S3 复制时间控制 (Amazon S3 RTC) 以及删除标记复制。自动化会执行以下操作：
+ 验证输入参数和存储桶配置的兼容性。
+ 检查源存储桶和目标存储桶的加密设置。
+ 如果未作为输入提供，则创建一个具有相应复制权限的新 AWS Identity and Access Management (IAM) 角色。
+ 根据指定的参数（前缀、标签或整个存储桶）配置复制规则。
+ 如果尚未启用，则启用存储桶版本控制。
+ 使用复制时间控制 (RTC) 和删除标记复制等可选功能设置复制配置。

**重要**  
**这种自动化不支持具有现有复制规则的存储桶。**源存储桶不得有任何现有的复制配置。
如果未提供 S3 ReplicationRole 输入，**此自动化会创建一个具有相应复制权限的新 IAM 角色**。
**这种自动化不会复制现有对象。**Amazon S3 复制仅适用于启用复制配置 uploaded/created 后的对象。
要进行跨账户复制，您必须在目标账户中为一个 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 加密存储桶应用适当的复制配置。
+ **配置SSES3复制**：为使用服务器端加密和 Amazon S3 托管密钥 (SSE-S3) 加密的存储桶配置 Amazon S3 复制，包括 IAM 角色和复制规则。
+ **配置 SSEKMSReplication**：为使用服务器端加密 AWS KMS (SSE-KMS) 加密的存储桶配置 Amazon S3 复制，包括 IAM 角色、KMS 密钥权限和复制规则。
+ **CleanupResources**：如果未提供 S3 作为输入，则清理在复制配置失败期间创建ReplicationRole 的 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
+ 我是：ListRoles
+ 我是：GetRole
+ 我是：GetRolePolicy
+ 我是：ListRoleTags
+ 我是：ListAttachedRolePolicies
+ 我是：ListRolePolicies
+ 我是：SimulatePrincipalPolicy
+ 我是：CreateRole
+ 我是：TagRole
+ 我是：PassRole
+ 我是：DeleteRole
+ 我是：DeleteRolePolicy
+ 我是：DetachRolePolicy
+ 我是：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: 加密（对于 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"
                }
            }
        }
    ]
}
```

**注意**  
只有当存储桶使用 SSE-KMS 加密时，才需要策略声明（KMSKeyReadOperations 和 KMSKeyMutatingOperations）。

**跨账户复制**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"
                }
            }
        }
    ]
}
```

**注意**  
只有当源存储桶使用 SSE-KMS 加密时，才需要策略声明（KMSSourceKeyReadOperations 和 KMSSourceKeyMutatingOperations）。
将 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"
                }
            }
        }
    ]
}
```

**注意**  
仅当目标存储桶使用 SSE-KMS 加密时，才需要 KMS 语句（KMSDestinationKeyReadOperations 和 KMSDestinationKeyMutatingOperations）。对于 SSE-S3 场景，请删除这些语句。

 CrossAccountReplicationRole 信任策略示例：

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

**注意**  
将 AUTOMATION\$1ASSUME\$1ROLE\$1ARN 替换为您提供的实际参数值。 AutomationAssumeRole 

**S3 ReplicationRole** 策略示例：

```
{
    "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"
        }
    ]
}
```

**注意**  
仅当存储桶使用 SSE-KMS 加密时，才需要 KMS 语句（KMSSourceKeyPermissions 和 KMSDestinationKeyPermissions）。
只有跨账户存储桶复制才需要 S3 CrossAccountPermissions 语句。

S3 ReplicationRole 信任策略示例：

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

 **说明** 

按照这些步骤对自动化进行配置：

1. [https://console.aws.amazon.com/systems-manager/documents/AWSSupport-ConfigureS3ReplicationSameAndCrossAccount/description](https://console.aws.amazon.com/systems-manager/documents/AWSSupport-ConfigureS3ReplicationSameAndCrossAccount/description)在 Systems Manager 的 “文档” 下导航至。

1. 选择 **Execute automation**（执行自动化）。

1. 对于输入参数，请输入以下内容：
   + **AutomationAssumeRole （必填）：**
     + 描述：（必填）允许 Systems Manager Automation 代表您执行操作的 AWS Identity and Access Management （IAM）角色的亚马逊资源名称 (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 SNS) Simple Notification Service 的 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)?$`
   + **批准者（必填）：**
     + 描述：（必填） user/role ARNs 授权批准自动化执行的 IAM 列表。
     + 类型：`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 （可选）：**
     + 描述：（可选）如果设置为`true`，则启用具有 15 分钟 SLA 的 Amazon S3 复制时间控制 (Amazon S3 RTC)，以实现可预测的复制时间。
     + 类型：`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”:” TagKey 1"、“Value”:” TagValue 1"\$1、\$1“Key”:” TagKey 2"、“Value”:” TagValue 2"\$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 加密存储桶应用适当的复制配置。
   + **配置SSES3复制**：

     为使用服务器端加密、使用 Amazon S3 托管密钥 (SSE-S3) 加密的存储桶配置 Amazon S3 复制，包括 IAM 角色和复制规则。
   + **配置 SSEKMSReplication**：

     为使用服务器端加密 AWS KMS (SSE-KMS) 加密的存储桶配置 Amazon S3 复制，包括 IAM 角色、KMS 密钥权限和复制规则。
   + **CleanupResources**:

     当客户未提供 S3 时，清理在复制配置失败期间创建ReplicationRole 的 IAM 角色。

1. 完成后，查看**配置SSES3复制**步骤（对于 SSE-S3 加密存储桶）或**配置SSEKMSReplication**步骤（对于 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)
+ [设置自动化](https://docs.aws.amazon.com//systems-manager/latest/userguide/automation-setup.html)
+ [Support 自动化工作流程](https://aws.amazon.com/premiumsupport/technology/saw/)