Configure Security

Confluent for Kubernetes takes an opinionated, automated approach to securing your Confluent deployment across authentication, authorization, network encryption, and configuration secrets.

Security topics covered in this section

Securing your Confluent deployment covers the following security dimensions:

  • Authentication

  • Authorization

  • Network encryption

  • Configuration secrets

As a best practice, use the following security configuration for production deployments:

For authentication

For Kafka client authentication, choose one of:

  • Simple Authentication and Security Layer (SASL)/PLAIN

  • SASL/PLAIN with Lightweight Directory Access Protocol (LDAP)

    For SASL/PLAIN, the identity can come from an LDAP server.

  • mTLS

For authorization

Confluent role-based access control (RBAC) for authorization, with user or group identity coming from an LDAP server.

For network encryption

TLS for both internal (between Confluent components) and external (clients to Confluent components) traffic.

For configuration secrets

Manage the lifecycle using Kubernetes Secrets or vaults, and reference them in the Confluent component custom resources.

For a comprehensive tutorial scenario on configuring Confluent recommended security, see the Security Tutorial.

While this is the recommended way to run Confluent for Kubernetes in production, you can also deploy and operate Confluent for Kubernetes with different security configurations. The following outlines the supported security configurations, with links to detailed concepts and instructions: