public class MultiTenantAuthorizer extends ConfluentServerAuthorizer
Modifier and Type | Class and Description |
---|---|
static class |
MultiTenantAuthorizer.TenantAuthorizerMetrics |
Modifier and Type | Field and Description |
---|---|
static String |
MAX_ACLS_PER_TENANT_PROP |
Constructor and Description |
---|
MultiTenantAuthorizer() |
Modifier and Type | Method and Description |
---|---|
Iterable<org.apache.kafka.common.acl.AclBinding> |
acls(org.apache.kafka.common.acl.AclBindingFilter filter) |
Iterable<org.apache.kafka.common.acl.AclBinding> |
acls(org.apache.kafka.common.acl.AclBindingFilter filter,
org.apache.kafka.common.acl.AclState aclState) |
List<org.apache.kafka.server.authorizer.AuthorizationResult> |
authorize(org.apache.kafka.server.authorizer.AuthorizableRequestContext requestContext,
List<org.apache.kafka.server.authorizer.Action> actions) |
io.confluent.security.authorizer.Action |
buildAction(org.apache.kafka.server.authorizer.Action kafkaAction,
org.apache.kafka.common.resource.ResourcePattern resourcePattern,
org.apache.kafka.common.security.auth.KafkaPrincipal sessionPrincipal,
io.confluent.security.authorizer.Scope scope) |
void |
configure(Map<String,?> configs) |
void |
configureAccessRuleProviders(Map<String,Object> configs) |
void |
configureServerInfo(org.apache.kafka.server.authorizer.internals.ConfluentAuthorizerServerInfo serverInfo) |
List<? extends CompletionStage<org.apache.kafka.server.authorizer.AclCreateResult>> |
createAcls(org.apache.kafka.server.authorizer.AuthorizableRequestContext requestContext,
List<org.apache.kafka.common.acl.AclBinding> aclBindings) |
List<? extends CompletionStage<org.apache.kafka.server.authorizer.AclCreateResult>> |
createAcls(org.apache.kafka.server.authorizer.AuthorizableRequestContext requestContext,
List<org.apache.kafka.common.acl.AclBinding> aclBindings,
Optional<String> clusterId) |
List<? extends CompletionStage<org.apache.kafka.server.authorizer.AclDeleteResult>> |
deleteAcls(org.apache.kafka.server.authorizer.AuthorizableRequestContext requestContext,
List<org.apache.kafka.common.acl.AclBindingFilter> aclBindingFilters) |
List<? extends CompletionStage<org.apache.kafka.server.authorizer.AclDeleteResult>> |
deleteAcls(org.apache.kafka.server.authorizer.AuthorizableRequestContext requestContext,
List<org.apache.kafka.common.acl.AclBindingFilter> aclBindingFilters,
Optional<String> clusterId,
org.apache.kafka.common.acl.AclState aclState) |
boolean |
isAuditLogEnabled() |
static boolean |
isSuperUser(io.confluent.kafka.multitenant.MultiTenantPrincipal tenantPrincipal,
io.confluent.security.authorizer.Action action,
boolean authorizationDisabled,
boolean enableDataplaneRbacForPKC,
boolean oauthSuperUserDisable) |
Set<String> |
reconfigurableConfigs() |
void |
reconfigure(Map<String,?> configs) |
aclCount, aclMutatorOrException, addAcl, authorizeByResourceType, completeInitialLoad, completeInitialLoad, loadSnapshot, removeAcl, setAclMutator, start, validateReconfiguration
accessRuleProvider, accessRuleProviders, auditLogProvider, authorize, clearAuthorizerProvidersMap, close, groupProvider, metadataProvider, removeFromAuthorizerProvidersMap, start
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
public static final String MAX_ACLS_PER_TENANT_PROP
public void configureServerInfo(org.apache.kafka.server.authorizer.internals.ConfluentAuthorizerServerInfo serverInfo)
configureServerInfo
in class ConfluentServerAuthorizer
public void configure(Map<String,?> configs)
configure
in interface org.apache.kafka.common.Configurable
configure
in class ConfluentServerAuthorizer
public Set<String> reconfigurableConfigs()
reconfigurableConfigs
in interface org.apache.kafka.common.Reconfigurable
reconfigurableConfigs
in class ConfluentServerAuthorizer
public void reconfigure(Map<String,?> configs)
reconfigure
in interface org.apache.kafka.common.Reconfigurable
reconfigure
in class ConfluentServerAuthorizer
public List<org.apache.kafka.server.authorizer.AuthorizationResult> authorize(org.apache.kafka.server.authorizer.AuthorizableRequestContext requestContext, List<org.apache.kafka.server.authorizer.Action> actions)
authorize
in class ConfluentServerAuthorizer
public static boolean isSuperUser(io.confluent.kafka.multitenant.MultiTenantPrincipal tenantPrincipal, io.confluent.security.authorizer.Action action, boolean authorizationDisabled, boolean enableDataplaneRbacForPKC, boolean oauthSuperUserDisable)
public io.confluent.security.authorizer.Action buildAction(org.apache.kafka.server.authorizer.Action kafkaAction, org.apache.kafka.common.resource.ResourcePattern resourcePattern, org.apache.kafka.common.security.auth.KafkaPrincipal sessionPrincipal, io.confluent.security.authorizer.Scope scope)
buildAction
in class ConfluentServerAuthorizer
public List<? extends CompletionStage<org.apache.kafka.server.authorizer.AclCreateResult>> createAcls(org.apache.kafka.server.authorizer.AuthorizableRequestContext requestContext, List<org.apache.kafka.common.acl.AclBinding> aclBindings)
createAcls
in interface org.apache.kafka.metadata.authorizer.ClusterMetadataAuthorizer
createAcls
in class ConfluentServerAuthorizer
public List<? extends CompletionStage<org.apache.kafka.server.authorizer.AclCreateResult>> createAcls(org.apache.kafka.server.authorizer.AuthorizableRequestContext requestContext, List<org.apache.kafka.common.acl.AclBinding> aclBindings, Optional<String> clusterId)
createAcls
in class ConfluentServerAuthorizer
public List<? extends CompletionStage<org.apache.kafka.server.authorizer.AclDeleteResult>> deleteAcls(org.apache.kafka.server.authorizer.AuthorizableRequestContext requestContext, List<org.apache.kafka.common.acl.AclBindingFilter> aclBindingFilters, Optional<String> clusterId, org.apache.kafka.common.acl.AclState aclState)
deleteAcls
in class ConfluentServerAuthorizer
public List<? extends CompletionStage<org.apache.kafka.server.authorizer.AclDeleteResult>> deleteAcls(org.apache.kafka.server.authorizer.AuthorizableRequestContext requestContext, List<org.apache.kafka.common.acl.AclBindingFilter> aclBindingFilters)
deleteAcls
in interface org.apache.kafka.metadata.authorizer.ClusterMetadataAuthorizer
deleteAcls
in class ConfluentServerAuthorizer
public Iterable<org.apache.kafka.common.acl.AclBinding> acls(org.apache.kafka.common.acl.AclBindingFilter filter)
acls
in class ConfluentServerAuthorizer
public Iterable<org.apache.kafka.common.acl.AclBinding> acls(org.apache.kafka.common.acl.AclBindingFilter filter, org.apache.kafka.common.acl.AclState aclState)
acls
in class ConfluentServerAuthorizer
public boolean isAuditLogEnabled()