【问题标题】:Java API for kafka-acls.sh in kerberised environment?kerberized 环境中 kafka-acls.sh 的 Java API?
【发布时间】:2016-03-31 14:16:18
【问题描述】:
我使用的是 hdp 2.4 kerberized。
我正在通过 java API 动态创建主题。
它已成功创建,但有人可以帮助所有用户访问,就像我们使用 kafka-acls.sh 所做的那样。
只是想通过java运行下面的命令:
kafka-acls.sh --add --allow-principals user:ctadmin --operation ALL --topic marchTesting --authorizer-properties zookeeper.connect={hostname}:2181
【问题讨论】:
标签:
security
apache-kafka
kerberos
java
【解决方案1】:
很简单:
import kafka.admin.AclCommand;
String[] cmdPArm = {"--add", "--allow-principals", "user:ctadmin", "--operation", "ALL","--topic", topicName ,"--authorizer-properties", "zookeeper.connect=hscale-dev1-dn1:2181,hscale-dev1-dn3:2181,hscale-dev1-dn2:2181"};
AclCommand.main(cmdPArm);