ElastiCache 传输中加密(TLS)
为了帮助确保数据安全,Amazon ElastiCache 和 Amazon EC2 提供了禁止未经授权来访问服务器上数据的机制。通过传输中加密功能,ElastiCache 为您提供了在不同位置之间移动数据时用来保护数据的工具。
在创建复制组时,可通过将参数 TransitEncryptionEnabled
设置为 true
(CLI:--transit-encryption-enabled
)在复制组中启用传输中加密。无论您使用 Amazon Web Services Management Console、Amazon CLI 还是 ElastiCache API 创建复制组,都可以采用此做法。如果要启用传输中加密,还必须为 CacheSubnetGroup
提供值。
传输中加密概览
Amazon ElastiCache 传输中加密是一项可选功能,它允许您在数据最脆弱时候(从一个位置传输到另一个位置时)提高数据的安全性。由于在端点加密和解密数据时需要进行一些处理,因此启用传输中加密会对性能产生一些影响。应对使用和不使用传输中加密的数据进行基准测试,以确定对使用案例的性能影响。
ElastiCache 传输中加密可实现以下功能:
-
加密连接 – 服务器和客户端连接均采用 TLS 加密。
-
加密复制 – 对在主节点与副本节点之间移动的数据进行加密。
-
服务器身份验证 – 客户端可通过身份验证确定它们连接到正确的服务器。
-
客户端身份验证 – 使用 Redis AUTH 功能,服务器可以对客户端进行身份验证。
传输中加密的条件
在规划实现时,应记住有关 Amazon ElastiCache 传输中加密的以下限制:
-
在运行以下 Redis 版本的复制组上支持传输中加密:3.2.6、4.0.10 和更高版本。
-
运行 Redis 版本 7 及更高版本的复制组支持修改现有集群的传输中加密设置。
-
只有在 Amazon VPC 中运行的复制组支持传输中加密。
-
只有运行以下节点类型的复制组才支持传输中加密。
-
R6g、R5、R4、R3
-
M6g、M5、M4、M3
-
T4g、T3、T2
有关更多信息,请参阅受支持的节点类型。
-
-
通过显式将参数
TransitEncryptionEnabled
设置为true
可启用传输中加密。 -
要连接到已启用传输中加密的复制组,必须为数据库启用传输层安全性协议(TLS)。要连接到未启用传输中加密的复制组,数据库不得启用 TLS。
传输中加密最佳实践
-
由于在端点加密和解密数据时需要进行一些处理,因此实现传输中加密会降低性能。使用自己的数据,对传输中加密进行基准测试,然后与不加密情况进行比较,以确定其对实现性能的影响。
-
由于创建新连接的成本可能非常高,您可以通过保留 TLS 连接来减小传输中加密对性能的影响。