4.9. 加密和身份验证
AMQ Streams 支持加密和身份验证,它们是监听器配置的一部分。
4.9.1. 监听程序配置
每个监听程序都在 Kafka 代理中配置加密和身份验证。有关 Kafka 监听程序配置的详情请参考 第 4.2 节 “监听程序”。
Kafka 代理中的每个监听程序都配置了自己的安全协议。配置属性 listener.security.protocol.map
定义哪个侦听器使用哪个安全协议。它将每个侦听器名称映射到其安全协议。支持的安全协议有:
PLAINTEXT
- 没有任何加密或身份验证的监听程序.
SSL
- 使用 TLS 加密以及可选地使用 TLS 客户端证书进行身份验证的监听程序。
SASL_PLAINTEXT
- 无加密侦听器,但具有基于 SASL 的身份验证.
SASL_SSL
- 侦听基于 TLS 的加密和基于 SASL 的身份验证.
根据以下 listeners
配置:
listeners=INT1://:9092,INT2://:9093,REPLICATION://:9094
listener.security.protocol.map
可能类似如下:
listener.security.protocol.map=INT1:SASL_PLAINTEXT,INT2:SASL_SSL,REPLICATION:SSL
这会将监听器 INT1
配置为使用与 SASL 身份验证的未加密连接,监听器 INT2
使用 SASL 身份验证的加密连接和 REPLICATION
接口使用 TLS 加密(可能与 TLS 客户端身份验证一样)。同一安全协议可以多次使用。以下示例也是有效的配置:
listener.security.protocol.map=INT1:SSL,INT2:SSL,REPLICATION:SSL
此类配置对所有接口使用 TLS 加密和 TLS 身份验证。以下章节将更详细地阐述如何配置 TLS 和 SASL。