Skip to main content
CommunityTeamEnterprise

Confluent Schema Registry

Configuration

Kpow connects to a Schema registry with environment variables.

VariableDescription
SCHEMA_REGISTRY_NAMEUI and logs friendly name for this Schema registry
SCHEMA_REGISTRY_URLThe client connection URL for your registry
SCHEMA_REGISTRY_AUTHUSER_INFO if basic authentication is configured
SCHEMA_REGISTRY_USERUsername if basic authentication is configured
SCHEMA_REGISTRY_PASSWORDPassword if basic authentication is configured
SCHEMA_REGISTRY_RESOURCE_IDSOptional, comma separated list of unique ids. Only specify when configuring multiple schema registries.
SCHEMA_REGISTRY_OBSERVATION_VERSIONOptional, sets the observation version used to snapshot schema resources. Default=1. See Observation Version.

SSL configuration

The following environment variables can be used to configure Confluent schema registry connections with mutual-TLS:

VariableDescription
SCHEMA_REGISTRY_SSL_KEYSTORE_LOCATIONLocation of the keystore file
SCHEMA_REGISTRY_SSL_KEYSTORE_PASSWORDPassword to access the keystore file
SCHEMA_REGISTRY_SSL_KEYSTORE_KEYSpecific key to use within the keystore
SCHEMA_REGISTRY_SSL_KEY_PASSWORDPassword to access the key within the keystore
SCHEMA_REGISTRY_SSL_KEYSTORE_TYPEKeystore type
SCHEMA_REGISTRY_SSL_KEYMANAGER_ALGORITHMKeymanager algorithm
SCHEMA_REGISTRY_SSL_TRUSTSTORE_LOCATIONLocation of the truststore file
SCHEMA_REGISTRY_SSL_TRUSTSTORE_PASSWORDPassword to access the truststore file
SCHEMA_REGISTRY_SSL_TRUSTSTORE_TYPETruststore type
SCHEMA_REGISTRY_SSL_TRUSTMANAGER_ALGORITHMTrustmanager algorithm
SCHEMA_REGISTRY_SSL_ENDPOINT_IDENTIFICATION_ALGORITHMSSL endpoint identification algorithm
SCHEMA_REGISTRY_SSL_PROVIDERSSL provider
SCHEMA_REGISTRY_SSL_CIPHER_SUITESSSL cipher suites
SCHEMA_REGISTRY_SSL_PROTOCOLSSL protocol
SCHEMA_REGISTRY_SSL_ENABLED_PROTOCOLSSSL enabled protocols
SCHEMA_REGISTRY_SSL_SECURE_RANDOM_IMPLEMENTATIONSSL secure random implementation
SCHEMA_REGISTRY_SSL_KEYSTORE_CERTIFICATE_CHAINSSL keystore certificate chain
SCHEMA_REGISTRY_SSL_TRUSTSTORE_CERTIFICATESSSL truststore certificates
SCHEMA_REGISTRY_SSL_ENGINE_FACTORY_CLASSSSL engine factory class

OAuth configuration

The following environment variables can be used to configure Confluent schema registry with Confluent Cloud via OAuth

See the Confluent Cloud guide to Schema Registry OAuth for more information.

VariableDescription
SCHEMA_REGISTRY_BEARER_AUTH_CREDENTIALS_SOURCEOAUTHBEARER or SASL_OAUTHBEARER_INHERIT
SCHEMA_REGISTRY_BEARER_AUTH_TOKENBearer Auth token
SCHEMA_REGISTRY_BEARER_AUTH_ISSUER_ENDPOINT_URLOpenID provider URL
SCHEMA_REGISTRY_BEARER_AUTH_CLIENT_IDClient ID
SCHEMA_REGISTRY_BEARER_AUTH_CLIENT_SECRETClient secret
SCHEMA_REGISTRY_BEARER_AUTH_SCOPEScope
SCHEMA_REGISTRY_BEARER_AUTH_SCOPE_CLAIM_NAMEScope claim name
SCHEMA_REGISTRY_BEARER_AUTH_SUB_CLAIM_NAMEScope sub claim name
SCHEMA_REGISTRY_BEARER_AUTH_LOGICAL_CLUSTERLSRC resource ID
SCHEMA_REGISTRY_BEARER_AUTH_IDENTITY_POOL_IDIdentity pool ID
SCHEMA_REGISTRY_BEARER_AUTH_CACHE_EXPIRY_BUFFER_SECONDSCache expiry buffer seconds

Observation version

To control how Kpow snapshots schemas, use the SCHEMA_REGISTRY_OBSERVATION_VERSION flag to set the observation version.

By default, when SCHEMA_REGISTRY_OBSERVATION_VERSION is set to 1, Kpow follows a two-step process to capture schema metadata. First, it retrieves all schema names with a single query. Then, with the specified parallelism level, it makes two REST calls for each schema: one to fetch metadata and another to fetch compatibility.

This method provides the most context at an aggregate level, but can be resource-intensive for larger schema registries, as the number of REST calls increases proportionally to the number of schemas.

Alternatively, when SCHEMA_REGISTRY_OBSERVATION_VERSION is set to 2 (Confluent only), Kpow uses a single-step process to capture schema metadata. It makes a single REST call to fetch all schemas, including their metadata. This approach can be much more efficient than version 1, but compatibility information is only available at the individual schema level in Kpow's UI.

Access control

User permissions to Kafka cluster resources are defined by Schema actions. See: User Authorization.