Kafka生产商 - Trace Kerberos用户



在带有kafka群集的Kerberized设置中,我可以轻松地执行该主题X,用户A和B有权生成消息,并且对于主题y,用户C具有生产消息的权利。

在可追溯性方面,这使我保证了所有有关主题y的消息均由用户C产生。但是,我也想知道用户A产生了哪些有关主题的消息,哪些消息是由用户a产生的,哪些消息是由用户b。

是否有一个选项可以与生产的用户标记每条消息?也许有一句话,我不想在生产者侧进行此操作,而是想强制执行经纪人侧,因此我绝对保证了此用户信息。

任何帮助将不胜感激。

我认为当前没有办法做到这一点。我知道的经纪人中仅有的两个可插入的课程是Kafkaprincipalbuilder和授权者,这两者都有您所追求的主要内容,但无法访问实际记录来在标头字段或任何人都将校长添加想要它。

,即使我们看着生产者方面,您可以自定义的两个选项都有interceptor和serialializer类,两者都可以访问记录,但不能访问用户本金。

如果您实际上想执行此操作,恐怕您必须变得有些创意,并做一些让他们签名的信息,则用私有键或类似的内容签名 - 在处理另一个消息时结束您可以丢弃任何不包含该字段的东西。

除此之外,我认为除了实际更改kafka本身以添加此信息之外,您无能为力 - 总的来说,handle producerequest方法应该是一个不错的起点,在这里您有已授权的请求,也可以访问包含本金的请求会话。记录在这里仅表示为字节案,不确定您是否可以轻松地标题tbh ..

最新更新