Class MultiTenantPrincipalBuilder

java.lang.Object
io.confluent.kafka.multitenant.MultiTenantPrincipalBuilder
All Implemented Interfaces:
org.apache.kafka.common.Configurable, org.apache.kafka.common.security.auth.KafkaPrincipalBuilder, org.apache.kafka.common.security.auth.KafkaPrincipalSerde

public class MultiTenantPrincipalBuilder extends Object implements org.apache.kafka.common.security.auth.KafkaPrincipalBuilder, org.apache.kafka.common.security.auth.KafkaPrincipalSerde, org.apache.kafka.common.Configurable
Principal builder that returns a MultiTenantPrincipal if tenant id is available. A regular KafkaPrincipal without tenant information is returned otherwise.
  • Field Details

  • Constructor Details

    • MultiTenantPrincipalBuilder

      public MultiTenantPrincipalBuilder()
  • Method Details

    • configure

      public void configure(Map<String,?> configs)
      Specified by:
      configure in interface org.apache.kafka.common.Configurable
    • build

      public org.apache.kafka.common.security.auth.KafkaPrincipal build(org.apache.kafka.common.security.auth.AuthenticationContext context)
      Specified by:
      build in interface org.apache.kafka.common.security.auth.KafkaPrincipalBuilder
    • userResourceId

      public String userResourceId(io.confluent.kafka.security.oauthbearer.OAuthBearerJwsToken token)
    • oauthClaim

      public String oauthClaim(io.confluent.kafka.security.oauthbearer.OAuthBearerJwsToken token, String claimKey)
    • serialize

      public byte[] serialize(org.apache.kafka.common.security.auth.KafkaPrincipal principal) throws org.apache.kafka.common.errors.SerializationException
      Specified by:
      serialize in interface org.apache.kafka.common.security.auth.KafkaPrincipalSerde
      Throws:
      org.apache.kafka.common.errors.SerializationException
    • deserialize

      public org.apache.kafka.common.security.auth.KafkaPrincipal deserialize(byte[] bytes) throws org.apache.kafka.common.errors.SerializationException
      Specified by:
      deserialize in interface org.apache.kafka.common.security.auth.KafkaPrincipalSerde
      Throws:
      org.apache.kafka.common.errors.SerializationException