

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

# 适用于 Windows File Server 的 Amazon FSx 中的数据保护
<a name="data-protection-encryption"></a>

对于适用于 Windows File Server 的 Amazon FSx 中的数据保护，AWS [责任共担模式](https://aws.amazon.com/compliance/shared-responsibility-model/)适用。如该模式中所述，AWS 负责保护运行所有 AWS 云 的全球基础结构。您负责维护对托管在此基础结构上的内容的控制。您还负责您所使用的 AWS 服务 的安全配置和管理任务。有关数据隐私的更多信息，请参阅[数据隐私常见问题](https://aws.amazon.com/compliance/data-privacy-faq/)。有关欧洲数据保护的信息，请参阅 *AWS Security Blog* 上的 [AWS Shared Responsibility Model and GDPR](https://aws.amazon.com/blogs/security/the-aws-shared-responsibility-model-and-gdpr/) 博客文章。

出于数据保护目的，建议您保护 AWS 账户 凭证并使用 AWS IAM Identity Center 或 AWS Identity and Access Management（IAM）设置单个用户。这样，每个用户只获得履行其工作职责所需的权限。还建议您通过以下方式保护数据：
+ 对每个账户使用多重身份验证（MFA）。
+ 使用 SSL/TLS 与 AWS 资源进行通信。我们要求使用 TLS 1.2，建议使用 TLS 1.3。
+ 使用 AWS CloudTrail 设置 API 和用户活动日记账记录。有关使用 CloudTrail 跟踪来捕获 AWS 活动的信息，请参阅《AWS CloudTrail 用户指南》**中的[使用 CloudTrail 跟踪](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-trails.html)。
+ 使用 AWS 加密解决方案以及 AWS 服务中的所有默认安全控制。
+ 使用高级托管安全服务（例如 Amazon Macie），它有助于发现和保护存储在 Amazon S3 中的敏感数据。
+ 如果在通过命令行界面或 API 访问 AWS 时需要经过 FIPS 140-3 验证的加密模块，请使用 FIPS 端点。有关可用的 FIPS 端点的更多信息，请参阅[《美国联邦信息处理标准（FIPS）第 140-3 版》](https://aws.amazon.com/compliance/fips/)。

强烈建议您切勿将机密信息或敏感信息（如您客户的电子邮件地址）放入标签或自由格式文本字段（如**名称**字段）。这包括使用控制台、API、AWS CLI 或 AWS SDK 处理 FSx for Windows File Server 或其他 AWS 服务 时。在用于名称的标签或自由格式文本字段中输入的任何数据都可能会用于计费或诊断日志。如果您向外部服务器提供网址，强烈建议您不要在网址中包含凭证信息来验证对该服务器的请求。



## FSx for Windows File Server 中的数据加密
<a name="data-encryption"></a>

适用于 Windows File Server 的 Amazon FSx 支持静态数据加密和传输中数据加密。创建 Amazon FSx 文件系统时，系统会自动启用静态数据加密。在支持 SMB 协议 3.0 或更高版本的计算实例上映射的文件共享支持传输中数据加密。Amazon FSx 会在您访问文件系统时使用 SMB 加密自动加密传输中数据，而无需修改应用程序。

### 何时使用加密
<a name="whenencrypt"></a>

如果您的组织的公司或监管策略要求静态加密数据和元数据，我们建议您创建加密的文件系统以挂载使用传输中的数据加密的文件系统。

如果您的组织受到要求对数据和元数据进行静态加密的公司或监管政策的约束，则您的数据会自动进行静态加密。我们还建议您通过对传输中数据进行加密来挂载文件系统，从而对传输中数据进行加密。

# 静态数据加密
<a name="encryption-at-rest"></a>

所有 Amazon FSx 文件系统都使用 AWS Key Management Service（AWS KMS）管理的密钥进行静态加密。数据在写入文件系统前会自动加密，并在读取时自动解密。这些过程由 Amazon FSx 透明地处理，因此，您不必修改您的应用程序。

Amazon FSx 使用行业标准 AES-256 加密算法对静态 Amazon FSx 数据和元数据进行加密。有关更多信息，请参阅《AWS Key Management Service 开发人员指南》**中的[加密基础知识](https://docs.aws.amazon.com/kms/latest/developerguide/crypto-intro.html)。

**注意**  
AWS 密钥管理基础设施使用联邦信息处理标准（FIPS）140-2 批准的加密算法。该基础设施符合美国国家标准与技术研究院（NIST）800-57 建议。

## Amazon FSx 如何使用 AWS KMS
<a name="EFSKMS"></a>

Amazon FSx 与 AWS KMS 集成在一起以进行密钥管理。Amazon FSx 使用 AWS KMS key 来加密您的文件系统。您可以选择用于加密和解密文件系统（包括数据和元数据）的 KMS 密钥。您可以启用、禁用或撤销对该 KMS 密钥的授权。该 KMS 密钥可以是以下两种类型之一：
+ **AWS 托管式密钥** – 这是默认 KMS 密钥，可以免费使用。
+ **客户托管密钥** – 这是使用最灵活的 KMS 密钥，因为您可以配置其密钥政策以及为多个用户或服务提供授权。有关创建客户托管式密钥的更多信息，请参阅《AWS Key Management Service 开发人员指南》**中的[创建密钥](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html)。

如果将客户托管式密钥作为您的 KMS 密钥加密和解密文件数据，您可以启用密钥轮换。在启用密钥轮换时，AWS KMS 自动每年轮换一次您的密钥。此外，对于客户托管式密钥，您可以随时选择何时禁用、重新启用、删除或撤销您的 KMS 密钥访问权限。有关更多信息，请参阅《AWS Key Management Service 开发人员指南》**中的[轮换 AWS KMS keys](https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html)。

## AWS KMS 的 Amazon FSx 密钥政策
<a name="FSxKMSPolicy"></a>

密钥政策是控制对 KMS 密钥访问的主要方法。有关密钥政策的更多信息，请参阅《AWS Key Management Service 开发人员指南》**中的[使用 AWS KMS 中的密钥政策](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html)。以下列表描述了 Amazon FSx 针对静态加密文件系统支持的所有 AWS KMS 相关权限：
+ **kms:Encrypt** –（可选）将明文加密为加密文字。该权限包含在默认密钥策略中。
+ **kms:Decrypt** –（必需）解密密文。密文是以前加密的明文。该权限包含在默认密钥策略中。
+ **kms:ReEncrypt** –（可选）使用新的 KMS 密钥加密服务器端的数据，而不公开客户端的数据明文。将先解密数据，然后重新加密。该权限包含在默认密钥策略中。
+ **kms:GenerateDataKeyWithoutPlaintext** –（必需）返回在 KMS 密钥下加密的数据加密密钥。该权限包含在默认密钥政策中的 **kms:GenerateDataKey\$1** 下面。
+ **kms:CreateGrant** –（必需）为密钥添加授权以指定哪些用户可以在什么条件下使用密钥。授权是密钥政策的替代权限机制。有关授权的更多信息，请参阅《AWS Key Management Service 开发人员指南》中的[使用授权](https://docs.aws.amazon.com/kms/latest/developerguide/grants.html)。该权限包含在默认密钥策略中。
+ **kms:DescribeKey** –（必需）提供有关所指定 KMS 密钥的详细信息。该权限包含在默认密钥策略中。
+ **kms:ListAliases** –（可选）列出账户中的所有密钥别名。在使用控制台创建加密的文件系统时，该权限将填充 KMS 密钥列表。我们建议您使用该权限以提供最佳的用户体验。该权限包含在默认密钥策略中。

# 传输中数据加密
<a name="encryption-in-transit"></a>

在支持 SMB 协议 3.0 或更高版本的计算实例上映射的文件共享支持传输中数据加密。这包括从 Windows Server 2012 和 Windows 8 开始的所有 Windows 版本，以及所有 Samba 客户端版本 4.2 或更高版本的 Linux 客户端。适用于 Windows File Server 的 Amazon FSx 会在您访问文件系统时使用 SMB 加密自动加密传输中数据，而无需修改应用程序。

SMB 加密使用 AES-128-GCM 或 AES-128-CCM（如果客户端支持 SMB 3.1.1，则选择 GCM 变体）作为其加密算法，同时通过使用 SMB Kerberos 会话密钥进行签名来提供数据完整性。使用 AES-128-GCM 可以提高性能，例如，通过加密的 SMB 连接复制大文件时，性能最多可提高 2 倍。

为了满足始终对传输中数据进行加密的合规性要求，您可以将文件系统的访问权限限制为仅允许访问支持 SMB 加密的客户端。您还可以启用或禁用每个文件共享或整个文件系统的传输中加密。这允许您在同一个文件系统上混合使用加密和未加密的文件共享。

## 管理传输中加密
<a name="manage-encrypt-in-transit"></a>

您可以使用一组自定义 PowerShell 命令来控制在 FSx for Windows File Server 文件系统和客户端之间的传输中数据加密。您可以将文件系统访问权限限制为仅支持 SMB 加密的客户端，以保持传输中数据始终处于加密状态。启用强制执行传输中数据加密后，使用不支持 SMB 3.0 加密的客户端访问文件系统的用户将无法访问已启用加密的文件共享。

您还可以在文件共享级别而不是文件服务器级别控制传输中数据加密。如果您想对某些包含敏感数据的文件共享强制执行传输中加密，并允许所有用户访问某些其他文件共享，则可以使用文件共享级别的加密控制，以在同一个文件系统上混合使用加密和未加密的文件共享。服务器范围的加密优先于共享级别的加密。如果启用了全局加密，则无法有选择地禁用某些共享的加密。

您可以使用 Amazon FSx CLI for Remote Management on PowerShell 管理文件系统上的传输中加密。要了解如何使用此 CLI，请参阅[将 Amazon FSx CLI 用于 PowerShell](administering-file-systems.md#remote-pwrshell)。

如下所列为可用于管理文件系统上的用户传输中加密的命令。


| 传输中加密命令 | 描述 | 
| --- | --- | 
|  **Get-FSxSmbServerConfiguration**  |  检索服务器消息块（SMB）服务器配置。在系统响应中，可以根据 `EncryptData` 和 `RejectUnencryptedAccess` 属性的值确定文件系统的传输中加密设置。  | 
|  **Set-FSxSmbServerConfiguration**  |  此命令提供两个选项，用于在文件系统上全局配置传输中加密： [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_cn/fsx/latest/WindowsGuide/encryption-in-transit.html)  | 
| **Set-FSxSmbShare -name *name* -EncryptData \$1True** | 将此参数设置为 `True`，以开启共享的传输中数据加密。将此参数设置为 `False`，以关闭共享的传输中数据加密。 | 

每个命令的联机帮助中都提供所有命令选项的参考信息。要访问此帮助，请运行包含 **-?** 的命令，例如 **Get-FSxSmbServerConfiguration -?**。