

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

# 跨 AWS 账户复制 EFS 文件系统
<a name="cross-account-replication"></a>

您可以跨 AWS 账户复制 EFS 文件系统。跨账户复制可增强灾难恢复（DR）策略的整体弹性和可靠性，并且可以帮助您满足公司的合规要求。

例如，合规策略可能要求您在不同的环境 [例如生产、暂存和灾难恢复（DR）] 中使用不同的账户。或者，您可能会发现，跨不同的复制可以 AWS 账户 提供更强的隔离、对权限和访问策略的更精细的控制，以及更直接的资源审计。如果生产账户遭到入侵（例如出现安全漏洞、配置错误或内部威胁），则将灾难恢复服务器放在单独的账户中可以防止攻击者访问它们，缩小安全事件的爆炸半径，并大幅降低发生未经授权更改的风险。

跨复制 AWS 账户 需要额外的安全设置和策略设置。您必须创建使 Amazon EFS 有权在目标账户中执行复制操作的 IAM 角色，而不是使用服务相关角色来执行跨账户复制。您还需要在要跨账户共享的文件系统上创建策略。创建 IAM 角色和文件系统策略后，可以创建复制配置。

**Topics**
+ [创建具有自定义信任策略的 IAM 角色](#replication-create-iam-role)
+ [在源文件系统和目标文件系统上创建策略](#replication-assign-fs-policies)
+ [创建复制配置](#xar-create-replication-configuration)

## 创建具有自定义信任策略的 IAM 角色
<a name="replication-create-iam-role"></a>

为了让 Amazon EFS 能够代表源账户执行跨账户复制，必须在源账户上创建 IAM 角色。该角色必须拥有 `elasticfilesystem.amazonaws.com` 信任策略，以支持 Amazon EFS 代入该角色并充当服务主体。该角色必须包含执行复制所需的全部 IAM 权限（请参阅[所需的 IAM 权限](efs-replication.md#efs-replication-permissions)），并授予向目标账户中文件系统进行复制的显式权限。

### 先决条件
<a name="replication-iam-role-prereqs"></a>

您必须在复制配置中同时创建源文件系统和目标文件系统，然后才能为源账户创建 IAM 角色。在复制过程中，Amazon EFS 无法为您创建目标文件系统。此外，您还必须知道并提供每个文件系统的 Amazon 资源名称（ARN）。

**创建 IAM 角色来进行跨账户复制**

以下是使用自定义信任策略创建用于执行 Amazon EFS 跨账户复制的 IAM 角色的一般步骤。有关创建 IAM 角色的 step-by-step说明，请参阅*AWS Identity and Access Management 用户指南*中的[使用自定义信任策略创建角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-custom.html)。

1. 在源账户的 AWS Identity and Access Management 控制台中，创建使用以下信任策略的 IAM 角色。相关说明，请参阅《AWS Identity and Access Management 用户指南》**中的[使用自定义信任策略创建角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-custom.html)。

------
#### [ JSON ]

****  

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

------

1. 创建该角色后，为该角色分配以下权限。将 `arn:aws:elasticfilesystem:us-east-1:111122223333:file-system/fs-0123456789abcdef1` 替换为目标文件系统的 ARN，并将 `arn:aws:elasticfilesystem:us-east-1:444455556666:file-system/fs-5678910112hijkqr1` 替换为源文件系统的 ARN。有关为角色分配权限的说明，请参阅[使用 JSON 编辑器创建策略](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create-console.html#access_policies_create-json-editor)。

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action":[
                   "elasticfilesystem:DescribeFileSystems",
                   "elasticfilesystem:CreateReplicationConfiguration",
                   "elasticfilesystem:DescribeReplicationConfigurations",
                   "elasticfilesystem:DeleteReplicationConfiguration",
                   "elasticfilesystem:ReplicationWrite"
               ],
               "Resource": "arn:aws:elasticfilesystem:us-east-1:111122223333:file-system/fs-0123456789abcdef1"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "elasticfilesystem:ReplicationRead",
                   "elasticfilesystem:DescribeFileSystems"
               ],
               "Resource": "arn:aws:elasticfilesystem:us-east-1:444455556666:file-system/fs-5678910112hijkqr1"
           }
       ]
   }
   ```

------

1. 复制或输入 IAM 角色的 ARN。创建复制配置时，您需要提供此 ARN。

## 在源文件系统和目标文件系统上创建策略
<a name="replication-assign-fs-policies"></a>

要在 Amazon EFS 中跨账户共享文件系统，必须为目标文件系统和源文件系统分配策略。这些策略授予或限制跨账户访问其应用到的文件系统。只有有权编辑文件系统的账户所有者才能为其账户中的文件系统分配策略。

除了授予或限制跨账户访问权限外，这些策略还需要授予客户端使用文件系统所需的其他权限，例如 `elasticfilesystem:ClientMount`。否则，客户端可能无法访问文件系统。

**重要**  
您无法限制通过 TLS 连接进行的资源访问。如果您在语句中包含 `"aws:SecureTransport": "false"` 条件，NFS 客户端连接将失败。

### 用于目标文件系统的策略
<a name="replication-assign-policy-destination"></a>

要授予源账户向目标文件系统执行复制操作的权限，以及从目标账户删除复制配置的权限，必须在目标文件系统上创建以下策略。将 `arn:aws:iam::444455556666:root` 替换为拥有源文件系统的账户的 ID。将 `arn:aws:elasticfilesystem:us-east-1:111122223333:file-system/fs-0123456789abcdef1` 替换为目标文件系统的 ARN 

------
#### [ JSON ]

****  

```
{ 
  "Version":"2012-10-17",		 	 	  
  "Statement": [ 
     { 
        "Sid": "AllowSourceAccountReplicationActions", 
        "Effect": "Allow",
        "Principal": { 
        "AWS": "arn:aws:iam::444455556666:root"
      }, 
    "Action": [ 
         "elasticfilesystem:DescribeFileSystems", 
         "elasticfilesystem:CreateReplicationConfiguration", 
         "elasticfilesystem:DescribeReplicationConfigurations",
         "elasticfilesystem:DeleteReplicationConfiguration", 
         "elasticfilesystem:ReplicationWrite" 
         ], 
     "Resource": "arn:aws:elasticfilesystem:us-east-1:111122223333:file-system/fs-0123456789abcdef1"
     },
     {
        "Sid": "AllowReadOnlyClientAccess",
        "Effect": "Allow",
        "Principal": {
            "AWS": "arn:aws:iam::111122223333:role/EfsReadOnly"
        },
        "Action": [
            "elasticfilesystem:ClientMount"
        ],
        "Resource": "arn:aws:elasticfilesystem:us-east-1:111122223333:file-system/fs-0123456789abcdef1"            
     }
   ]
}
```

------

### 用于源文件系统的策略
<a name="replication-assign-policy-source"></a>

要授予目标账户从源账户中删除复制配置的权限，必须将以下策略分配给源文件系统。将 `arn:aws:iam::111122223333:root` 替换为拥有目标文件系统的账户的 ID。将 ` arn:aws:elasticfilesystem:us-east-1:444455556666:file-system/fs-5678910112hijkqr1` 替换为源文件系统的 ARN。

------
#### [ JSON ]

****  

```
{  
    "Version":"2012-10-17",		 	 	 
    "Id": "efs-policy-wizard-15ad9567-2546-4bbb-8168-5541b6fc0e55",
    "Statement": [
        {
            "Sid": "AllowDestinationAccountToDeleteReplication",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::111122223333:root"
            },
            "Action": "elasticfilesystem:DeleteReplicationConfiguration",
            "Resource": "arn:aws:elasticfilesystem:us-east-1:444455556666:file-system/fs-5678910112hijkqr1"
        },
        {
            "Sid": "AllowClientAccess",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::111122223333:role/EfsReadOnly"
            },
            "Action": [
                "elasticfilesystem:ClientMount",
                "elasticfilesystem:ClientWrite",
                "elasticfilesystem:ClientRootAccess"
            ],
            "Resource": "arn:aws:elasticfilesystem:us-east-1:444455556666:file-system/fs-5678910112hijkqr1",
            "Condition": {
               "Bool": {
                   "elasticfilesystem:AccessedViaMountTarget": "true"
               }
           }            
        }
    ]
}
```

------

**创建文件系统策略**

使用上一节中创建的策略，对目标文件系统和源文件系统执行以下步骤。

1.  AWS 管理控制台 使用拥有文件系统的账户登录，然后在 Amazon EFS 控制台上打开 Amaz [on EFS 控制台](https://console.aws.amazon.com/efs/)。

1. 打开文件系统：

   1. 在左侧导航窗格中，选择**文件系统**。

   1. 在**文件系统**列表中，选择所需文件系统。

1. 在**文件系统策略** 选项卡中，选择**编辑**。

1. 将策略粘贴到**策略编辑器 \$1Json\$1** 中，然后选择**保存**。

## 创建复制配置
<a name="xar-create-replication-configuration"></a>

创建 IAM 角色并将文件系统策略添加到源文件系统和目标文件系统后，请按照[配置到现有 EFS 文件系统的复制](replicate-existing-destination.md)中的说明创建复制配置。