

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

# 屏蔽对 EFS 文件系统的公共访问权限
<a name="access-control-block-public-access"></a>

Amazon EFS 屏蔽公共访问权限功能提供设置来帮助您管理对 EFS 文件系统的公共访问。默认情况下，新的 EFS 文件系统不允许公共访问。但是，您可以修改文件系统策略以允许公有访问。

**重要**  
启用“屏蔽公共访问权限”可防止通过直接附加到文件系统的资源策略来授予公共访问权限，有助于保护您的资源。除了启用“屏蔽公共访问权限”之外，还要仔细检查以下策略，来确认它们不会授予公共访问权限：  
附加到关联 Amazon 委托人（例如，IAM 角色）的基于身份的策略
附加到关联资源的基于 Amazon 资源的策略（例如，Amazon Key Management Service (KMS) 密钥）

**Topics**
+ [使用以下方式阻止公众访问 Amazon Transfer Family](#block-efs-public-access-with-transferfamily)
+ [“公有”的含义](#what-is-a-public-policy)

## 使用以下方式阻止公众访问 Amazon Transfer Family
<a name="block-efs-public-access-with-transferfamily"></a>

当您将 Amazon EFS 与配合使用时 Amazon Transfer Family，如果文件系统允许公开访问，则从属于与文件系统不同的账户的 Transfer Family 服务器收到的文件系统访问请求将被阻止。Amazon EFS 会评估文件系统的 IAM 策略，如果策略是公有的，则会阻止相关请求。要允许 Amazon Transfer Family 访问您的文件系统，请更新您的文件系统策略，使其不被视为公开。

**注意**  
对于在 2021 年 1 月 6 日之前创建的 EFS 文件系统且策略允许公开访问的，默认情况下会禁用在 Amazon EFS 中使用 Tran Amazon Web Services 账户 sfer Family。要允许使用 Transfer Family 访问您的文件系统，请联系 Amazon 支持部门。

## “公有”的含义
<a name="what-is-a-public-policy"></a>

在评估文件系统是否允许公有访问时，Amazon EFS 假设文件系统策略是公有的。然后对文件系统策略进行评估，以确定它是否符合非公有条件。当文件系统策略仅向以下一个或多个对象的固定值（不包含通配符的值）授予访问权限时，才会将该策略视为非公有：
+  Amazon 委托人、用户、角色或服务主体（例如，`aws:PrincipalOrgID`）
+ `aws:SourceArn`
+ `aws:SourceVpc`
+ `aws:SourceVpce`
+ `aws:SourceOwner`
+ `aws:SourceAccount`
+ `elasticfilesystem:AccessedViaMountTarget`
+ `aws:userid, outside the pattern "AROLEID:*"`

根据这些规则，以下示例策略被视为公有。

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

****  

```
{  
    "Version":"2012-10-17",		 	 	 
    "Id": "efs-policy-wizard-15ad9567-2546-4bbb-8168-5541b6fc0e55",
    "Statement": [
        {
            "Sid": "efs-statement-14a7191c-9401-40e7-a388-6af6cfb7dd9c",
            "Effect": "Allow",
            "Principal": {
                "AWS": "*"
            },
            "Action": [
                "elasticfilesystem:ClientMount",
                "elasticfilesystem:ClientWrite",
                "elasticfilesystem:ClientRootAccess"
            ],
            "Resource": "arn:aws:elasticfilesystem:us-east-1:111122223333:file-system/*"
            }
     ]
}
```

------

您可以使用设置为 True 的 EFS 条件键 `elasticfilesystem:AccessedViaMountTarget` 将此文件系统策略设为非公有。您可以使用 `elasticfilesystem:AccessedViaMountTarget` 允许对通过文件系统挂载目标访问 EFS 文件系统的客户端执行指定的 EFS 操作。以下非公有策略使用设置为 True 的 `elasticfilesystem:AccessedViaMountTarget` 条件键。

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

****  

```
{  
    "Version":"2012-10-17",		 	 	 
    "Id": "efs-policy-wizard-15ad9567-2546-4bbb-8168-5541b6fc0e55",
    "Statement": [
        {
            "Sid": "efs-statement-14a7191c-9401-40e7-a388-6af6cfb7dd9c",
            "Effect": "Allow",
            "Principal": {
                "AWS": "*"
            },
            "Action": [
                "elasticfilesystem:ClientMount",
                "elasticfilesystem:ClientWrite",
                "elasticfilesystem:ClientRootAccess"
            ],
            "Resource": "arn:aws:elasticfilesystem:us-east-1:111122223333:file-system/*",
            "Condition": {
                "Bool": {
                    "elasticfilesystem:AccessedViaMountTarget": "true"
                }
            }
        }
    ]
}
```

------

有关 Amazon EFS 条件键的更多信息，请参阅[客户端的 EFS 条件键](iam-access-control-nfs-efs.md#efs-condition-keys-for-nfs)。有关创建文件系统策略的更多信息，请参阅[创建文件系统策略](create-file-system-policy.md)。