...
So the general approach is to identify how to inject requests and then set the appropriate AuthenticationRequestEnqueuer
implementation on the SaslChannelBuilder
. In addition to the above examples the PR also includes implementations for org.apache.kafka.clients.admin.KafkaAdminClient
and , org.apache.kafka.clients.producer.KafkaProducer
, and kafka.coordinator.transaction.TransactionMarkerChannelManager
.
The PR does not yet have implementations for these classes:
...
kafka.coordinator.transaction.TransactionMarkerChannelManager
(extends kafka.common.InterBrokerSendThread
)
...
an implementation for kafka.server.ReplicaFetcherBlockingSend
.
There is no intent to include code in the PR to re-authenticate connections originating from these classes:
kafka.admin.AdminClient
(this class is deprecated)kafka.tools.ReplicaVerificationTool
(a low-priority edge case?, no need to support the option here)kafka.server.KafkaServer
(aNetworkClient
instance is only instantiated for shutdown and is therefore not long-lived enough to require re-authentication)org.apache.kafka.trogdor.workload.ConnectionStressWorker
(this class simply connects and doesn’t do anything else with the connection)
...