2016-03-04 114 views
0

我在探索卡夫卡0.9.1的安全功能,但无法成功使用它。卡夫卡0.9.1授权

我在server.properties下文配置

allow.everyone.if.no.acl.found =假 super.users =用户:根;用户:卡夫卡

我使用以下命令创建ACL

./kafka-acls.sh --authorizer-properties zookeeper.connect = --add --allow-principal用户:imit --allow-host --topic imit --producer --consumer --group imit-consumer-group

,我看到下面的响应为资源Topic:imit

当前ACL: 用户:IMIT具有允许操作的权限:从主机描述: 用户:IMIT具有允许操作的权限:从主机阅读: 用户:IMIT具有允许操作的权限:从主机写:

注:<提到值>被替换为这个问题做了虚拟值,并在创建ACL正确使用

我有如下看法:

一)虽然我定义IMIT专题访问特定使用给定主机然而,我可以写使用任何用户账户的任何主机的话题规则。

b)我无法从任何主机或任何用户帐户(即使使用我已定义规则的主机)中的主题读取消息。

我在RHEL 6.7上运行Kafka,所有用户都是本地的。

如果有人能够指导我是否缺少任何配置参数或命令来管理授权,或者卡夫卡是否以奇怪的方式工作,请注意。

我还可以在哪里获得卡夫卡的授权相关日志?

感谢&问候,

萨迪普

回答

2

你可能会错过下面的设置,在你的Server.properties。

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

- 添加此行将使ACL通过SimpleAclAuthorizer工作。 - Kafka默认附带由参数Authorizer.class.name定义的kafka.security.auth.SimpleAclAuthorizer

您可以尝试下面的设置,它可能会给出完整的想法。

https://github.com/Symantec/kafka-security-0.9

+0

虽然此链接可以回答这个问题,最好是在这里有答案的主要部件,并提供链接以供参考。如果链接页面更改,则仅链接答案可能会失效。 - [来自评论](/ review/low-quality-posts/11695151) –

+0

我已经包含了所需的答案,用户必须添加该属性 – supermonk

+0

您应该解释这些行的功能。 –