Uncategorised

Manually managing Kafka topics and ACLs is error-prone, time-consuming, and not scalable.

💡 What if you could declaratively define all your Kafka resources and permissions, just like code?

Introducing Kafka-ACL-Manager — a lightweight Java tool that brings infrastructure-as-code principles to your Kafka access management.

👉 GitHub: github.com/severinmbekou/Kafka-ACL-Manager


⚙️ What does it do?

Kafka-ACL-Manager lets you:

Create or update Kafka topics from a YAML file
Apply fine-grained ACLs to topics based on declarative permissions
Delete obsolete topics and ACLs not present in the configuration
Generate detailed logs for each execution
Externalize sensitive config via .properties and environment variables


🔧 How to Use It

 java -jar kafka-acl-manager.jar \
--config=conf/admin-client.properties \
--resources=conf/kafka-resources.yml
admin-client.properties: Kafka client and security config (bootstrap servers, SASL, etc.)

 

kafka-resources.yml: declarative definition of topics and ACL

📦 Ideal For:

  • CI/CD pipelines that provision Kafka environments

  • DevSecOps & Platform Engineering teams

  • Automating Kafka onboarding and access control

  • Avoiding CLI/manual drift across environments


  • topics:
    - name: example-topic
    partitions: 3
    replicationFactor: 2

    acls:
    - topic: example-topic
    permissions:
    - principal: User:alice
    operation: READ
    permission: ALLOW
    - principal: User:bob
    operation: WRITE
    permission: ALLOW

    🧠 Why it matters?

    Managing Kafka security manually is outdated. Kafka-ACL-Manager helps you adopt declarative access control and automated topic governance.


    📍 Project & Contributions

    GitHub → https://github.com/severinmbekou/Kafka-ACL-Manager
    ⭐ If you find it useful, star the repo and share your feedback. PRs are welcome!


Choose the extension from the left menu.

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur turpis tellus, scelerisque ac fringilla vitae, pulvinar vitae nunc. Pellentesque tempus lectus non mauris elementum consectetur. Maecenas a metus nisl, accumsan tincidunt nunc. Morbi condimentum consequat odio, ac tristique orci sodales ac.