2016-11-17 99 views
1

我有一个3节点的Kafka集群和2个kafka客户端用于生产者和消费者。我已启用SSL身份验证。我想为集群启用授权。我在代理节点的server.properties中添加了以下属性。谁在设置kafka集群的授权

authorizer.class.name = kafka.security.auth.SimpleAclAuthorizer

我知道,这是存储ACL信息的饲养员。我想知道谁可以为不同的客户设置授权。授权如何设置?

回答

0

设置authorizer.class.name=kafka.security.auth.SimpleAclAuthorizer后,群集将通过授权检查与代理的每个连接。

谁可以为不同的客户设置授权?
认为任何可以执行kafka-acls.sh可执行文件的用户都可以设置授权。如果您需要仅限于自己的能力,您可以将文件的权限更改为700.

授权是如何设置的?
设置SimpleAclAuthorizer后,默认情况下,用户不能访问任何资源,除非在ACL中指定了该资源。您可以按如下添加一个新的ACL:

bin/kafka-acls --authorizer-properties zookeeper.connect=localhost:2181 --add --allow-principal User:Bob --allow-principal User:Alice --allow-host 198.51.100.0 --allow-host 198.51.100.1 --operation Read --operation Write --topic Test-topic 

上述命令将它表示允许用户Alice和Bob从主机198.51.100.0,198.51.100.1连接的ACL,“读”和“写”操作上话题'测试话题'。添加和删​​除ACL已被明确解释为here
让我知道如果你有任何疑问。