在 Amazon EMR 上的 Presto 中使用 SSL/TLS 和配置 LDAPS - Amazon EMR
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

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

在 Amazon EMR 上的 Presto 中使用 SSL/TLS 和配置 LDAPS

对于 Amazon EMR 版本 5.6.0 及更高版本,您可以启用 SSL/TLS 以帮助保护 Presto 节点之间的内部通信。为此,您可以为传输中加密设置安全配置。有关更多信息,请参阅 https://docs.amazonaws.cn/emr/latest/ManagementGuide/emr-data-encryption-options.html 中的加密选项和Amazon EMR 管理指南使用安全配置设置集群安全性

在将安全配置与传输中加密一起使用时,Amazon EMR 为 Presto 执行以下操作:

  • 在整个 Presto 集群中分发您为传输中加密指定的加密构件或证书。有关更多信息,请参阅为传输中的数据加密提供证书

  • 使用 presto-config 配置分类设置以下属性,该分类对应于 Presto 的 config.properties 文件:

    • 在所有节点http-server.http.enabledfalse将 设置为 ,这会禁用 HTTP 以支持 HTTPS。这要求您在为传输中加密设置安全配置时,提供适用于公有和私有 DNS 的证书。执行此操作的一种方法是使用支持多个域的 SAN(主题替代名称)证书。

    • 设置http-server.https.*值。有关配置详细信息,请参阅 Presto 文档中的 LDAP 身份验证

  • 对于 EMR 版本 6.1.0 及更高版本上的 Trino (PrestoSQL Amazon EMR 自动配置一个共享私有密钥,以便在集群节点之间建立安全的内部通信。您无需执行任何其他配置即可启用此安全功能,并且您可以使用自己的私有密钥覆盖配置。有关 Trino 内部身份验证的信息,请参阅 Trino 353 文档:安全内部通信。

此外,对于 Amazon EMR 版本 5.10.0 及更高版本,您可以为使用 HTTPS 建立的到 Presto 协调器的客户端连接设置 LDAP 身份验证。此设置使用安全 LDAP (LDAPS)。必须在 LDAP 服务器上启用 TLS,并且 Presto 集群必须使用启用了传输中数据加密的安全配置。需要额外的配置。配置选项因使用的 Amazon EMR 发行版而有所不同。有关更多信息,请参阅在 Amazon EMR 上的 Presto 中使用 LDAP 身份验证

默认情况下,Amazon EMR 上的 Presto 使用端口 8446 进行内部 HTTPS 通信。用于内部通信的端口必须与用于对 Presto 协调器进行客户端 HTTPS 访问的端口相同。http-server.https.port 配置分类中的 presto-config 属性指定该端口。