public class DefaultMTlsTruststoreManager extends Object implements org.apache.kafka.common.security.mtls.MTlsTruststoreManager, org.apache.kafka.common.utils.FileWatchService.Listener
MTlsTruststoreManager that manages CA certificates in a truststore file.
This can also remove expired certificates from the truststore file to keep the truststore clean.
| Modifier and Type | Field and Description |
|---|---|
static String |
ALIAS_SEPARATOR |
| Constructor and Description |
|---|
DefaultMTlsTruststoreManager() |
| Modifier and Type | Method and Description |
|---|---|
void |
addCertificates(String orgId,
String providerId,
X509Certificate[] certificates) |
void |
close() |
void |
configure(Map<String,?> configs) |
File |
file() |
static String |
generateUniqueAlias(X509Certificate certificate,
String providerId,
String orgId) |
void |
onInit() |
void |
onUpdate() |
void |
removeCertificates(String organizationId,
String providerId) |
void |
removeCertificates(String orgId,
String providerId,
X509Certificate[] certificates) |
void |
setAdminSupplierAndCreateClient(Supplier<org.apache.kafka.clients.admin.AdminClient> adminClientSupplier)
When using this class in a Kafka broker, the
AdminClient instance is required to update the broker's
dynamic SSL truststore configuration. |
public static final String ALIAS_SEPARATOR
public void configure(Map<String,?> configs)
configure in interface org.apache.kafka.common.Configurableconfigure in interface org.apache.kafka.common.security.mtls.MTlsTruststoreManagerpublic void addCertificates(String orgId, String providerId, X509Certificate[] certificates)
addCertificates in interface org.apache.kafka.common.security.mtls.MTlsTruststoreManagerpublic void removeCertificates(String orgId, String providerId, X509Certificate[] certificates)
removeCertificates in interface org.apache.kafka.common.security.mtls.MTlsTruststoreManagerpublic void removeCertificates(String organizationId, String providerId)
removeCertificates in interface org.apache.kafka.common.security.mtls.MTlsTruststoreManagerpublic void close()
throws IOException
close in interface Closeableclose in interface AutoCloseableclose in interface org.apache.kafka.common.security.mtls.MTlsTruststoreManagerIOExceptionpublic void setAdminSupplierAndCreateClient(Supplier<org.apache.kafka.clients.admin.AdminClient> adminClientSupplier)
AdminClient instance is required to update the broker's
dynamic SSL truststore configuration.
This method allows setting a supplier for creating the AdminClient on demand.public File file()
file in interface org.apache.kafka.common.utils.FileWatchService.Listenerpublic void onInit()
onInit in interface org.apache.kafka.common.utils.FileWatchService.Listenerpublic void onUpdate()
onUpdate in interface org.apache.kafka.common.utils.FileWatchService.Listenerpublic static String generateUniqueAlias(X509Certificate certificate, String providerId, String orgId)