Java API for kafka-acls.sh 在kerberised环境中?

Java API for kafka-acls.sh in kerberised environment?

我正在使用 hdp 2.4 kerberised。 我正在通过 java API 动态创建主题。 它已成功创建,但有人可以帮助为所有用户提供访问权限,就像我们使用 kafka-acls.sh.

所做的那样

只是想 运行 通过 java:

kafka-acls.sh --add --allow-principals user:ctadmin --operation ALL --topic marchTesting --authorizer-properties zookeeper.connect={hostname}:2181

很简单:

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);