

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

# Amazon MSK 加密
<a name="msk-encryption"></a>

Amazon MSK 提供了数据加密选项，可使用这些选项来满足严格的数据管理要求。Amazon MSK 用于加密的证书必须每 13 个月续订一次。Amazon MSK 会自动为所有集群续订这些证书。Amazon MSK 开始进行证书更新操作时，快速代理集群仍处于 `ACTIVE` 状态。对于标准代理集群，Amazon MSK 会集群在启动证书更新操作时将集群状态设置为 `MAINTENANCE`。待更新完成后，MSK 会将集群状态重新设置为 `ACTIVE`。当集群处于证书更新操作时，您可以继续生成和使用数据，但无法对数据执行任何更新操作。

## Amazon MSK 静态加密
<a name="msk-encryption-at-rest"></a>

Amazon MSK 与 [AWS Key Management Service](https://docs.aws.amazon.com/kms/latest/developerguide/)（KMS）集成以提供透明的服务器端加密。Amazon MSK 始终加密您的静态数据。当创建 MSK 集群时，您可以指定您希望 Amazon MSK 用于加密静态数据的 AWS KMS key 。如果您不指定 KMS 密钥，Amazon MSK 会为您创建一个 [AWS 托管式密钥](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk) 并代表您使用它。有关 KMS 密钥的更多信息，请参阅《AWS Key Management Service 开发人员指南》**中的 [AWS KMS keys](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#kms_keys)。

## Amazon MSK 传输中加密
<a name="msk-encryption-in-transit"></a>

Amazon MSK 会使用 TLS 1.2。默认情况下，它会加密在 MSK 集群的代理之间传输的数据。可以在创建集群时覆盖此默认值。

对于客户端和代理之间的通信，您必须指定下列三项设置之一：
+ 仅允许 TLS 加密数据。这是默认设置。
+ 同时允许明文数据和 TLS 加密数据。
+ 仅允许明文数据。

亚马逊 MSK 经纪人使用公共 AWS Certificate Manager 证书。因此，任何信任 Amazon Trust Services 的信任库也会信任 Amazon MSK 代理的证书。

虽然我们强烈建议启用传输中加密，但它可能会增加额外的 CPU 开销和几毫秒的延迟。但是，大多数使用案例对这些差异并不敏感，影响的程度取决于集群、客户端和使用情况配置文件的配置。