【发布时间】:2018-07-02 19:44:41
【问题描述】:
在 kafka 中,是否有一种方法可以在消费者每次尝试读取其订阅者主题的消息时对消费者进行身份验证/授权?
这里的用例是消费者应该能够向 kafka 代理提供身份验证令牌,然后代理应该能够在让消费者从主题中读取消息之前验证该令牌。
在 kafka 中可以实现吗?
【问题讨论】:
标签: apache-kafka kafka-consumer-api
在 kafka 中,是否有一种方法可以在消费者每次尝试读取其订阅者主题的消息时对消费者进行身份验证/授权?
这里的用例是消费者应该能够向 kafka 代理提供身份验证令牌,然后代理应该能够在让消费者从主题中读取消息之前验证该令牌。
在 kafka 中可以实现吗?
【问题讨论】:
标签: apache-kafka kafka-consumer-api
Kafka 提供可插拔的身份验证和授权机制。
对于身份验证,创建自己的逻辑的过程如下所述: Can Kafka be provided with custom LoginModule to support LDAP?
对于授权,您只需提供一个实现 Authorizer 接口 (https://github.com/apache/kafka/blob/trunk/core/src/main/scala/kafka/security/auth/Authorizer.scala) 的类,并将 authorizer.class.name 设置为您在 server.properties 中的类。
身份验证仅在客户端连接时执行,因此如果您需要对每个消费操作进行验证,则必须使用授权。
我建议您熟悉 Kafka 安全功能,更具体地说是授权:http://kafka.apache.org/documentation/#security_authz
【讨论】: