Chapter 1. A
1.1. Access Operator Copy linkLink copied to clipboard!
An optional operator that simplifies the sharing of Kafka connection information and credentials between namespaces. Connection details are stored centrally in a Secret resource.
1.2. Authentication Copy linkLink copied to clipboard!
Defines how clients prove their identity to the Kafka cluster. Streams for Apache Kafka manages authentication as a client-server relationship:
- Server-Side: The Kafka cluster’s listeners are configured to require a specific authentication type.
Client-Side: A client (a
KafkaUseror a client-based Kafka component managed by Streams for Apache Kafka) must be configured to provide matching credentials.- Listener authentication (Server-Side)
-
Listener authentication is configured per listener in the
spec.kafka.listenersarray of theKafkacustom resource. Supported types includetls,scram-sha-512, andcustom. - Client authentication (Kafka user)
-
For Kafka users, authentication is managed using the
KafkaUsercustom resource. Supported types aretls,tls-external(using an external CA), andscram-sha-512. Streams for Apache Kafka automatically creates the necessarySecretresources for the user. - Client authentication (Kafka components)
-
For Streams for Apache Kafka-managed components, authentication is managed in the custom resource of the component, such as
KafkaConnect. Supported types includetls,scram-sha-256,scram-sha-512,plain, andcustom.
For more information, see the following:
1.3. Authorization (cluster-wide) Copy linkLink copied to clipboard!
Defines which actions an authenticated client is permitted to perform on Kafka resources, such as writing to or reading from a topic. Configuration involves setting a cluster-wide mechanism and then, if required, defining user-specific rules.
- Cluster-wide authorization
-
This defines the overall mechanism used by the Kafka cluster to control client actions. It’s configured in the
spec.kafka.authorizationsection of theKafkacustom resource. Supported types includesimple(using the Kafka’s built-in authorizer) andcustom(using custom authorizers). - User authorization (ACLs)
-
This defines specific Access Control Lists (ACLs) for a user, granting permissions to perform actions on
Kafkaresources. The ACLs are defined in thespec.authorizationsection of theKafkaUsercustom resource. If using a custom authorization mechanism, user permissions are typically managed within the external authorization system and not through theKafkaUserresource.
For more information, see the following: