You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: modules/console/pages/config/configure-console.adoc
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -14,7 +14,7 @@ Environment variables and YAML configurations can overwrite input that is set on
14
14
15
15
The recommended configuration source is a YAML file. You can specify the path to the configuration file by setting either
16
16
the `-config.filepath` flag or the `CONFIG_FILEPATH` environment variable.
17
-
A reference configuration file is provided under <<Example Redpanda Console configuration file>>.
17
+
A reference configuration file is provided under <<Complete configuration file example>>.
18
18
19
19
In Linux package installations, this file is located in `/etc/redpanda/redpanda-console-config.yaml` by default and Redpanda Console is configured to read from this file path.
Copy file name to clipboardExpand all lines: modules/console/pages/config/security/authentication.adoc
+93-57Lines changed: 93 additions & 57 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -81,19 +81,10 @@ Redpanda Console supports enabling both OIDC and basic authentication simultaneo
81
81
82
82
=== Enable OIDC authentication
83
83
84
-
To configure OIDC, choose one of two modes:
85
-
86
-
* *Runtime acquisition mode:* Redpanda Console obtains a token from the IdP.
87
-
* *Static token mode:* You provide a pre-acquired OIDC token.
84
+
When you enable OIDC authentication, Redpanda Console uses an external IdP to authenticate users. This allows for single sign-on (SSO) and centralized user management.
88
85
89
86
Redpanda and Redpanda Console require OAuth 2.0-compliant JWT tokens for user authentication. When using OIDC, your IdP must issue JWTs. Redpanda Console uses these tokens to authenticate to Redpanda APIs through SASL/OAUTHBEARER or Bearer headers.
IMPORTANT: For any secret values, xref:console:config/configure-console.adoc[use environment variables] instead of hardcoding them in the configuration file. For example, use `AUTHENTICATION_OIDC_CLIENTSECRET` for the client secret.
94
-
95
-
==== Enable runtime acquisition mode
96
-
97
88
[,yaml]
98
89
----
99
90
authentication:
@@ -131,26 +122,9 @@ authentication:
131
122
<11> Optional. Determines how the authorization prompt appears. Use `consent` (default) to force re-consent. Other options include `none` and `select_account`. Some IdPs require `consent` to issue a refresh token.
132
123
<12> Optional. Extracts and optionally transforms a claim from the OIDC token to use as the user's identity in Redpanda Console role bindings. The default is `"$.sub"`, which uses the `sub` (subject) claim from the token. This value is then compared to the `name` field in your `authorization.roleBindings` configuration. For full syntax and transformation examples, see xref:console:config/security/authorization.adoc#_transform_identities_with_principal_mappings[Transform identities with principal mappings].
IMPORTANT: For any secret values, xref:console:config/configure-console.adoc[use environment variables] instead of hardcoding them in the configuration file. For example, use `AUTHENTICATION_OIDC_CLIENTSECRET` for the client secret.
152
126
153
-
<1> A pre-acquired OIDC token. Keep this secure. You can also use the `AUTHENTICATION_OIDC_TOKEN` environment variable.
TIP: Redpanda Data recommends user impersonation so that access control is fine-grained and centralized within Redpanda. This way, audit logs are also more accurate, as they reflect the actual user identity.
241
215
216
+
[NOTE]
217
+
====
218
+
When using OIDC with static credentials, Redpanda Console authenticates to Redpanda as the OIDC client itself (usually a service principal). In this case, Redpanda evaluates access based on the `sub` claim in the token. Ensure you grant ACLs for your principals. For help creating ACLs, see xref:manage:security/authorization/acl.adoc[].
219
+
====
220
+
242
221
=== Kafka API examples
243
222
244
-
.User impersonation
223
+
This section provides examples of how to configure authentication for communicating with the Kafka API from Redpanda Console. You can choose between user impersonation or static credentials.
224
+
225
+
==== User impersonation
226
+
227
+
This option is useful when you want to use the same login credentials to authenticate Kafka API requests in Redpanda. This ensures accurate audit logs and enforces unified identity.
228
+
245
229
[,yaml]
246
230
----
247
231
kafka:
@@ -251,7 +235,10 @@ kafka:
251
235
impersonateUser: true
252
236
----
253
237
254
-
.Static credentials with SCRAM
238
+
==== Static credentials with SCRAM
239
+
240
+
This option is useful when you want to use basic authentication. Redpanda Console uses the provided credentials for authentication.
241
+
255
242
[,yaml]
256
243
----
257
244
kafka:
@@ -270,7 +257,10 @@ authorization:
270
257
name: "matt"
271
258
----
272
259
273
-
.Static credentials with OIDC
260
+
==== Static credentials with OIDC (token acquired at runtime)
261
+
262
+
This option is useful when you want to use OIDC. This configuration instructs Redpanda Console to fetch an OAuth 2.0 access token at runtime using the client credentials grant flow.
<1> Client ID registered with the identity provider (IdP).
279
+
<2> Client secret associated with the client ID. Store securely using an environment variable, such as `KAFKA_SASL_OAUTH_CLIENTSECRET`.
280
+
<3> OAuth 2.0 token endpoint URL provided by the IdP.
281
+
<4> Requested scope to authorize access. Required by some IdPs, such as Azure Entra ID.
294
282
295
-
[NOTE]
296
-
====
297
-
When using OIDC without impersonation, Redpanda Console authenticates to Redpanda as the OIDC client itself (usually a service principal). In this case, Redpanda evaluates access based on the `sub` claim in the token. Be sure to set `oidc_principal_mapping: "$.sub"` in your Redpanda configuration and grant ACLs for that value. For detailed steps to create ACLs, see xref:manage:security/authorization/acl.adoc[]
298
-
====
283
+
==== Static credentials with OIDC (pre-acquired token)
284
+
285
+
This option is suitable when a token is issued externally and injected into the environment (for example, through CI/CD, Vault, or other automation workflows). Redpanda Console does not attempt to refresh or renew the token.
286
+
287
+
[,yaml]
288
+
----
289
+
kafka:
290
+
brokers: ["broker1:9092"]
291
+
sasl:
292
+
enabled: true
293
+
impersonateUser: false
294
+
mechanism: OAUTHBEARER
295
+
oauth:
296
+
token: "<static-jwt-token>" # <1>
297
+
----
298
+
<1> A valid OAuth 2.0 JWT. Redpanda Console uses this token when authenticating to Kafka. To avoid hardcoding sensitive data, provide this value using the `KAFKA_SASL_OAUTH_TOKEN` environment variable.
299
+
300
+
==== Static credentials with OIDC (token from file)
301
+
302
+
This option is useful when running Redpanda Console in Kubernetes, where a service account token is mounted to the Pod filesystem. Redpanda Console reads this token at startup and uses it for authentication.
303
+
304
+
Redpanda Console does not monitor the token file for changes after startup. To ensure the token is refreshed, restart the Console periodically or implement a sidecar that triggers restarts on token rotation.
<1> Path to a file containing a valid OAuth 2.0 JWT token. Redpanda Console reads this file at startup and uses its contents as the access token.
299
318
300
319
=== Schema Registry API examples
301
320
302
-
.User impersonation
321
+
This section provides examples of how to configure authentication for communicating with the Schema Registry API from Redpanda Console. You can choose between user impersonation or static credentials.
322
+
323
+
==== User impersonation
324
+
325
+
This option is useful when you want to use the same login credentials to authenticate API requests in the Schema Registry. This ensures accurate audit logs and enforces unified identity.
326
+
303
327
[,yaml]
304
328
----
305
329
schemaRegistry:
@@ -309,7 +333,10 @@ schemaRegistry:
309
333
impersonateUser: true
310
334
----
311
335
312
-
.Static credentials with basic auth
336
+
==== Static credentials with basic auth
337
+
338
+
This option is useful when you want to use basic authentication. Redpanda Console uses the provided credentials for authentication.
339
+
313
340
[,yaml]
314
341
----
315
342
schemaRegistry:
@@ -328,7 +355,10 @@ authorization:
328
355
name: "matt"
329
356
----
330
357
331
-
.Static credentials with OIDC bearer token
358
+
==== Static credentials with OIDC bearer token
359
+
360
+
This option is useful when you want to use OIDC but do not want to implement a custom token refresh mechanism. Redpanda Console uses a pre-fetched token for authentication.
361
+
332
362
[,yaml]
333
363
----
334
364
schemaRegistry:
@@ -352,7 +382,12 @@ You can supply a static bearer token here, but this token must be refreshed manu
352
382
353
383
=== Admin API examples
354
384
355
-
.User impersonation
385
+
This section provides examples of how to configure authentication for communicating with the Admin API from Redpanda Console. You can choose between user impersonation or static credentials.
386
+
387
+
==== User impersonation
388
+
389
+
This option is useful when you want to use the same login credentials to authenticate API requests in the Admin API. This ensures accurate audit logs and enforces unified identity.
390
+
356
391
[,yaml]
357
392
----
358
393
redpanda:
@@ -363,7 +398,10 @@ redpanda:
363
398
impersonateUser: true
364
399
----
365
400
366
-
.Static credentials with basic auth
401
+
==== Static credentials with basic auth
402
+
403
+
This option is useful when you want to use basic authentication. Redpanda Console uses the provided credentials for authentication.
404
+
367
405
[,yaml]
368
406
----
369
407
redpanda:
@@ -383,7 +421,10 @@ authorization:
383
421
name: "matt"
384
422
----
385
423
386
-
.Static credentials with OIDC bearer token
424
+
==== Static credentials with OIDC bearer token
425
+
426
+
This option is useful when you want to use OIDC but do not want to implement a custom token refresh mechanism. Redpanda Console uses a pre-fetched token for authentication.
427
+
387
428
[,yaml]
388
429
----
389
430
redpanda:
@@ -401,11 +442,6 @@ authorization:
401
442
name: "<sub-from-token>"
402
443
----
403
444
404
-
[NOTE]
405
-
====
406
-
When impersonation is disabled, Redpanda Console executes Admin API requests as the service identity represented in the token. This is typically the `sub` from the client credentials flow, and must match an ACL or RBAC binding.
407
-
====
408
-
409
445
== Next steps
410
446
411
447
- xref:console:config/security/authorization.adoc[Configure role-based access control (RBAC) in Redpanda Console]
0 commit comments