我正在使用 Kafka 的默认 ACL 授权器,但最近我遇到了自定义 ACL 授权器的主题。
我确实检查过,但找不到太多细节。我想了解:
- 默认 ACL 授权方是否足以在生产中使用?
- 我可以参考的任何示例来了解自定义 ACL 授权方应该做什么?
谢谢!
1(是的,您可以在生产中运行默认的授权方。
2( Kafka 允许管理员插入自定义授权方实现。这允许将ACL存储在Zookeeper以外的另一个系统中。
例如,大多数云提供商都有识别和访问管理(IAM(。在这种情况下,可以重用此 IAM 服务来存储和管理 Kafka ACL,并编写使用 IAM 中的 ACL 而不是 Zookeeper 的授权方。
更一般地说,使用自定义授权方,您可以编写所需的任何授权规则。由于自定义授权方可以访问会话的主体,因此当与自定义委托人构建器 (principal.builder.class
结合使用时,这允许构建非常灵活和强大的规则。