Ashish K Singh created KAFKA-3186:
-------------------------------------

             Summary: Kafka authorizer should be aware of principal types it 
supports.
                 Key: KAFKA-3186
                 URL: https://issues.apache.org/jira/browse/KAFKA-3186
             Project: Kafka
          Issue Type: Improvement
            Reporter: Ashish K Singh
            Assignee: Ashish K Singh


Currently, Kafka authorizer is agnostic of principal types it supports, so are 
the acls CRUD methods in {{kafka.security.auth.Authorizer}}. The intent behind 
is to keep Kafka authorization pluggable, which is really great. However, this 
leads to following issues.

1. {{kafka-acls.sh}} supports pluggable authorizer and custom principals, 
however is some what integrated with {{SimpleAclsAuthorizer}}. The help 
messages has details which might not be true for a custom authorizer. For 
instance, assuming User is a supported PrincipalType.
2. Acls CRUD methods perform no check on validity of acls, as they are not 
aware of what principal types the support. This opens up space for lots of user 
errors, KAFKA-3097 is an instance.

I suggest we add a {{getSupportedPrincipalTypes}} method to authorizer and use 
that for acls verification during acls CRUD, and make {{kafka-acls.sh}} help 
messages more generic.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to