You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kafka.apache.org by "Laurent Millet (o.b.o. Airbus) (Jira)" <ji...@apache.org> on 2019/10/11 13:41:00 UTC
[jira] [Created] (KAFKA-9025) ZkSecurityMigrator not working with
zookeeper chroot
Laurent Millet (o.b.o. Airbus) created KAFKA-9025:
-----------------------------------------------------
Summary: ZkSecurityMigrator not working with zookeeper chroot
Key: KAFKA-9025
URL: https://issues.apache.org/jira/browse/KAFKA-9025
Project: Kafka
Issue Type: Bug
Components: security
Affects Versions: 2.3.0
Environment: Reproduced at least on rhel and macos
Reporter: Laurent Millet (o.b.o. Airbus)
The ZkSecurityMigrator tool fails to handle installations where kafka is configured with a zookeeper chroot (as opposed to using /, the default):
* ACLs on existing nodes are not modified (they are left world-modifiable)
* New nodes created by the tool are created directly under the zookeeper root instead of under the chroot
The tool does not emit any message, thus the unsuspecting user can only assume everything went well, when in fact it did not and znodes are still not secure:
kafka_2.12-2.3.0 $ bin/zookeeper-security-migration.sh --zookeeper.acl=secure --zookeeper.connect=localhost:2181
kafka_2.12-2.3.0 $
For example, with kafka configured to use /kafka as chroot (zookeeper.connect=localhost:2181/kafka), the following is observed:
* Before running the tool
** Zookeeper top-level nodes (all kafka nodes are under /kafka):
[zk: localhost:2181(CONNECTED) 1] ls /
[kafka, zookeeper]
** Example node ACL:
[zk: localhost:2181(CONNECTED) 2] getAcl /kafka/brokers
'world,'anyone
: cdrwa
* After running the tool:
** Zookeeper top-level nodes (kafka nodes created by the tool appeared here):
[zk: localhost:2181(CONNECTED) 3] ls /
[admin, brokers, cluster, config, controller, controller_epoch, delegation_token, isr_change_notification, kafka, kafka-acl, kafka-acl-changes, kafka-acl-extended, kafka-acl-extended-changes, latest_producer_id_block, log_dir_event_notification, zookeeper]
** Example node ACL:
[zk: localhost:2181(CONNECTED) 4] getAcl /kafka/brokers
'world,'anyone
: cdrwa
** New node ACL:
[zk: localhost:2181(CONNECTED) 5] getAcl /brokers
'sasl,'kafka
: cdrwa
'world,'anyone
: r
--
This message was sent by Atlassian Jira
(v8.3.4#803005)