我使用的是Kafka的默认ACL授权者,但最近我遇到了一个自定义ACL授权者的话题。
我确实检查过,但是找不到很多细节。我想了解:
谢谢!
答案 0 :(得分:1)
1)是的,您可以在生产环境中运行默认的Authorizer。
2)Kafka允许管理员插入自定义的Authorizer实现。这样可以将ACL存储在Zookeeper之外的其他系统中。
例如,大多数云提供商都提供身份识别和访问管理(IAM)。在这种情况下,可以重用此IAM服务来存储和管理Kafka ACL,并编写使用IAM而不是Zookeeper的ACL的授权方。
通常,使用自定义授权器,您可以编写所需的任何授权规则。由于自定义授权者可以访问会话的主体,因此与自定义PrincipalBuilder(principal.builder.class
)结合使用时,可以构建非常灵活且功能强大的规则。