[Verse 1]
In the Kafka realm where messages flow
We need to control who can go where they go
KafkaUser spec authorization comes first
Simple ACLs to quench your access thirst
Define the rules in YAML clean and bright
Who can read and write, who gets the right
[Chorus]
Three ways to authorize, keep them in mind
Simple ACLs, Keycloak refined
OPA custom when you need more control
Literal prefix wildcard makes you whole
Authorization layers protecting your stream
Strimzi security living the dream
[Verse 2]
Keycloak steps up when simple won't do
Authorization Services coming through
Fine-grained policies with context aware
Role-based decisions handled with care
Resource servers and permissions defined
Policy evaluation peace of mind
[Chorus]
Three ways to authorize, keep them in mind
Simple ACLs, Keycloak refined
OPA custom when you need more control
Literal prefix wildcard makes you whole
Authorization layers protecting your stream
Strimzi security living the dream
[Bridge]
Patterns make the magic happen fast
Literal matches exact and they last
Prefix patterns start the same way
Wildcard asterisk saves the day
Match your topics, match your groups
Authorization follows all your loops
[Verse 3]
Open Policy Agent when you need to code
Custom authorizer down a different road
Rego language policies you can write
Decision engine working day and night
Plugin architecture flexible and strong
Custom logic where you belong
[Chorus]
Three ways to authorize, keep them in mind
Simple ACLs, Keycloak refined
OPA custom when you need more control
Literal prefix wildcard makes you whole
Authorization layers protecting your stream
Strimzi security living the dream
[Outro]
From simple specs to complex rules
Strimzi gives you all the tools
Protect your Kafka, control the flow
Authorization everywhere you go