This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git


The following commit(s) were added to refs/heads/main by this push:
     new 671c1da823b CAMEL-22382: camel-main - Add authenticationRealm for 
server security
671c1da823b is described below

commit 671c1da823b8724014085f1ad36fab6202b22223
Author: Claus Ibsen <[email protected]>
AuthorDate: Wed Aug 27 14:24:30 2025 +0200

    CAMEL-22382: camel-main - Add authenticationRealm for server security
---
 .../main/camel-main-configuration-metadata.json     |  2 ++
 .../BasicAuthenticationConfigurer.java              | 21 +++++++++++++++++++--
 .../authentication/JWTAuthenticationConfigurer.java |  6 ++++--
 ...mentServerConfigurationPropertiesConfigurer.java |  7 +++++++
 ...HttpServerConfigurationPropertiesConfigurer.java |  7 +++++++
 .../META-INF/camel-main-configuration-metadata.json |  2 ++
 core/camel-main/src/main/docs/main.adoc             |  6 ++++--
 ...HttpManagementServerConfigurationProperties.java | 21 +++++++++++++++++++++
 .../main/HttpServerConfigurationProperties.java     | 21 +++++++++++++++++++++
 9 files changed, 87 insertions(+), 6 deletions(-)

diff --git 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/main/camel-main-configuration-metadata.json
 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/main/camel-main-configuration-metadata.json
index d4e27b859ea..3579da0b9db 100644
--- 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/main/camel-main-configuration-metadata.json
+++ 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/main/camel-main-configuration-metadata.json
@@ -194,6 +194,7 @@
     { "name": "camel.lra.localParticipantUrl", "required": false, 
"description": "The URL for the local participant", "sourceType": 
"org.apache.camel.main.LraConfigurationProperties", "type": "string", 
"javaType": "java.lang.String", "secret": false },
     { "name": "camel.management.authenticationEnabled", "required": false, 
"description": "Whether to enable HTTP authentication for embedded server (for 
standalone applications; not Spring Boot or Quarkus).", "sourceType": 
"org.apache.camel.main.HttpManagementServerConfigurationProperties", "type": 
"boolean", "javaType": "boolean", "defaultValue": "false", "secret": false },
     { "name": "camel.management.authenticationPath", "required": false, 
"description": "Set HTTP url path of embedded server that is protected by 
authentication configuration.", "sourceType": 
"org.apache.camel.main.HttpManagementServerConfigurationProperties", "type": 
"string", "javaType": "java.lang.String", "secret": false },
+    { "name": "camel.management.authenticationRealm", "required": false, 
"description": "Sets the authentication realm", "sourceType": 
"org.apache.camel.main.HttpManagementServerConfigurationProperties", "type": 
"string", "javaType": "java.lang.String", "secret": false },
     { "name": "camel.management.basicPropertiesFile", "required": false, 
"description": "Name of the file that contains basic authentication info for 
Vert.x file auth provider.", "sourceType": 
"org.apache.camel.main.HttpManagementServerConfigurationProperties", "type": 
"string", "javaType": "java.lang.String", "secret": false },
     { "name": "camel.management.devConsoleEnabled", "required": false, 
"description": "Whether to enable developer console (not intended for 
production use). Dev console must also be enabled on CamelContext. For example 
by setting camel.context.dev-console=true in application.properties, or via 
code camelContext.setDevConsole(true); If enabled then you can access a basic 
developer console on context-path: \/q\/dev.", "sourceType": 
"org.apache.camel.main.HttpManagementServerConfigurationP [...]
     { "name": "camel.management.downloadEnabled", "required": false, 
"description": "Whether to enable file download via HTTP. This makes it 
possible to browse and download resource source files such as Camel XML or YAML 
routes. Only enable this for development, troubleshooting or special situations 
for management and monitoring.", "sourceType": 
"org.apache.camel.main.HttpManagementServerConfigurationProperties", "type": 
"boolean", "javaType": "boolean", "defaultValue": "false", "secret" [...]
@@ -304,6 +305,7 @@
     { "name": "camel.routecontroller.unhealthyOnRestarting", "required": 
false, "description": "Whether to mark the route as unhealthy (down) when the 
route failed to initially start, and is being controlled for restarting 
(backoff). If setting this to false will make health checks ignore this problem 
and allow to report the Camel application as UP.", "sourceType": 
"org.apache.camel.main.RouteControllerConfigurationProperties", "type": 
"boolean", "javaType": "boolean", "defaultValue": tr [...]
     { "name": "camel.server.authenticationEnabled", "required": false, 
"description": "Whether to enable HTTP authentication for embedded server (for 
standalone applications; not Spring Boot or Quarkus).", "sourceType": 
"org.apache.camel.main.HttpServerConfigurationProperties", "type": "boolean", 
"javaType": "boolean", "defaultValue": "false", "secret": false },
     { "name": "camel.server.authenticationPath", "required": false, 
"description": "Set HTTP url path of embedded server that is protected by 
authentication configuration.", "sourceType": 
"org.apache.camel.main.HttpServerConfigurationProperties", "type": "string", 
"javaType": "java.lang.String", "secret": false },
+    { "name": "camel.server.authenticationRealm", "required": false, 
"description": "Sets the authentication realm", "sourceType": 
"org.apache.camel.main.HttpServerConfigurationProperties", "type": "string", 
"javaType": "java.lang.String", "secret": false },
     { "name": "camel.server.basicPropertiesFile", "required": false, 
"description": "Name of the file that contains basic authentication info for 
Vert.x file auth provider.", "sourceType": 
"org.apache.camel.main.HttpServerConfigurationProperties", "type": "string", 
"javaType": "java.lang.String", "secret": false },
     { "name": "camel.server.enabled", "required": false, "description": 
"Whether embedded HTTP server is enabled. By default, the server is not 
enabled.", "sourceType": 
"org.apache.camel.main.HttpServerConfigurationProperties", "type": "boolean", 
"javaType": "boolean", "defaultValue": "false", "secret": false },
     { "name": "camel.server.fileUploadDirectory", "required": false, 
"description": "Directory to temporary store file uploads while Camel routes 
the incoming request. If no directory has been explicit configured, then a 
temporary directory is created in the java.io.tmpdir directory.", "sourceType": 
"org.apache.camel.main.HttpServerConfigurationProperties", "type": "string", 
"javaType": "java.lang.String", "secret": false },
diff --git 
a/components/camel-platform-http-main/src/main/java/org/apache/camel/component/platform/http/main/authentication/BasicAuthenticationConfigurer.java
 
b/components/camel-platform-http-main/src/main/java/org/apache/camel/component/platform/http/main/authentication/BasicAuthenticationConfigurer.java
index ae9cff89f8b..bef37925b86 100644
--- 
a/components/camel-platform-http-main/src/main/java/org/apache/camel/component/platform/http/main/authentication/BasicAuthenticationConfigurer.java
+++ 
b/components/camel-platform-http-main/src/main/java/org/apache/camel/component/platform/http/main/authentication/BasicAuthenticationConfigurer.java
@@ -16,13 +16,16 @@
  */
 package org.apache.camel.component.platform.http.main.authentication;
 
+import io.vertx.ext.auth.authentication.AuthenticationProvider;
 import io.vertx.ext.auth.properties.PropertyFileAuthentication;
+import io.vertx.ext.web.handler.AuthenticationHandler;
 import io.vertx.ext.web.handler.BasicAuthHandler;
 import 
org.apache.camel.component.platform.http.vertx.auth.AuthenticationConfig;
 import 
org.apache.camel.component.platform.http.vertx.auth.AuthenticationConfig.AuthenticationConfigEntry;
 import org.apache.camel.main.HttpManagementServerConfigurationProperties;
 import org.apache.camel.main.HttpServerConfigurationProperties;
 
+import static io.vertx.ext.web.handler.BasicAuthHandler.DEFAULT_REALM;
 import static org.apache.camel.util.ObjectHelper.isNotEmpty;
 
 public class BasicAuthenticationConfigurer implements 
MainAuthenticationConfigurer {
@@ -38,10 +41,17 @@ public class BasicAuthenticationConfigurer implements 
MainAuthenticationConfigur
         if ("/".equals(path)) {
             path = "/*";
         }
+        String realm = properties.getAuthenticationRealm() != null ? 
properties.getAuthenticationRealm() : DEFAULT_REALM;
 
         AuthenticationConfigEntry entry = new AuthenticationConfigEntry();
         entry.setPath(path);
-        entry.setAuthenticationHandlerFactory(BasicAuthHandler::create);
+        entry.setAuthenticationHandlerFactory(new 
AuthenticationConfig.AuthenticationHandlerFactory() {
+            @Override
+            public <T extends AuthenticationProvider> AuthenticationHandler 
createAuthenticationHandler(
+                    T authenticationProvider) {
+                return BasicAuthHandler.create(authenticationProvider, realm);
+            }
+        });
         entry.setAuthenticationProviderFactory(
                 vertx -> PropertyFileAuthentication.create(vertx, 
authPropertiesFileName));
 
@@ -60,10 +70,17 @@ public class BasicAuthenticationConfigurer implements 
MainAuthenticationConfigur
         if ("/".equals(path)) {
             path = "/*";
         }
+        String realm = properties.getAuthenticationRealm() != null ? 
properties.getAuthenticationRealm() : DEFAULT_REALM;
 
         AuthenticationConfigEntry entry = new AuthenticationConfigEntry();
         entry.setPath(path);
-        entry.setAuthenticationHandlerFactory(BasicAuthHandler::create);
+        entry.setAuthenticationHandlerFactory(new 
AuthenticationConfig.AuthenticationHandlerFactory() {
+            @Override
+            public <T extends AuthenticationProvider> AuthenticationHandler 
createAuthenticationHandler(
+                    T authenticationProvider) {
+                return BasicAuthHandler.create(authenticationProvider, realm);
+            }
+        });
         entry.setAuthenticationProviderFactory(
                 vertx -> PropertyFileAuthentication.create(vertx, 
authPropertiesFileName));
 
diff --git 
a/components/camel-platform-http-main/src/main/java/org/apache/camel/component/platform/http/main/authentication/JWTAuthenticationConfigurer.java
 
b/components/camel-platform-http-main/src/main/java/org/apache/camel/component/platform/http/main/authentication/JWTAuthenticationConfigurer.java
index 6503993344c..61616107434 100644
--- 
a/components/camel-platform-http-main/src/main/java/org/apache/camel/component/platform/http/main/authentication/JWTAuthenticationConfigurer.java
+++ 
b/components/camel-platform-http-main/src/main/java/org/apache/camel/component/platform/http/main/authentication/JWTAuthenticationConfigurer.java
@@ -43,6 +43,7 @@ public class JWTAuthenticationConfigurer implements 
MainAuthenticationConfigurer
         if ("/".equals(path)) {
             path = "/*";
         }
+        String realm = properties.getAuthenticationRealm() != null ? 
properties.getAuthenticationRealm() : null;
 
         AuthenticationConfigEntry entry = new AuthenticationConfigEntry();
         entry.setPath(path);
@@ -51,7 +52,7 @@ public class JWTAuthenticationConfigurer implements 
MainAuthenticationConfigurer
             public <T extends AuthenticationProvider> AuthenticationHandler 
createAuthenticationHandler(
                     T authenticationProvider) {
                 JWTAuth authProvider = (JWTAuth) authenticationProvider;
-                return JWTAuthHandler.create(authProvider);
+                return JWTAuthHandler.create(authProvider, realm);
             }
         });
         entry.setAuthenticationProviderFactory(vertx -> JWTAuth.create(
@@ -77,6 +78,7 @@ public class JWTAuthenticationConfigurer implements 
MainAuthenticationConfigurer
         if ("/".equals(path)) {
             path = "/*";
         }
+        String realm = properties.getAuthenticationRealm() != null ? 
properties.getAuthenticationRealm() : null;
 
         AuthenticationConfigEntry entry = new AuthenticationConfigEntry();
         entry.setPath(path);
@@ -85,7 +87,7 @@ public class JWTAuthenticationConfigurer implements 
MainAuthenticationConfigurer
             public <T extends AuthenticationProvider> AuthenticationHandler 
createAuthenticationHandler(
                     T authenticationProvider) {
                 JWTAuth authProvider = (JWTAuth) authenticationProvider;
-                return JWTAuthHandler.create(authProvider);
+                return JWTAuthHandler.create(authProvider, realm);
             }
         });
         entry.setAuthenticationProviderFactory(vertx -> JWTAuth.create(
diff --git 
a/core/camel-main/src/generated/java/org/apache/camel/main/HttpManagementServerConfigurationPropertiesConfigurer.java
 
b/core/camel-main/src/generated/java/org/apache/camel/main/HttpManagementServerConfigurationPropertiesConfigurer.java
index 069888b08fa..ad55f4821f9 100644
--- 
a/core/camel-main/src/generated/java/org/apache/camel/main/HttpManagementServerConfigurationPropertiesConfigurer.java
+++ 
b/core/camel-main/src/generated/java/org/apache/camel/main/HttpManagementServerConfigurationPropertiesConfigurer.java
@@ -24,6 +24,7 @@ public class 
HttpManagementServerConfigurationPropertiesConfigurer extends org.a
         Map<String, Object> map = new CaseInsensitiveMap();
         map.put("AuthenticationEnabled", boolean.class);
         map.put("AuthenticationPath", java.lang.String.class);
+        map.put("AuthenticationRealm", java.lang.String.class);
         map.put("BasicPropertiesFile", java.lang.String.class);
         map.put("DevConsoleEnabled", boolean.class);
         map.put("DownloadEnabled", boolean.class);
@@ -56,6 +57,8 @@ public class 
HttpManagementServerConfigurationPropertiesConfigurer extends org.a
         case "authenticationEnabled": 
target.setAuthenticationEnabled(property(camelContext, boolean.class, value)); 
return true;
         case "authenticationpath":
         case "authenticationPath": 
target.setAuthenticationPath(property(camelContext, java.lang.String.class, 
value)); return true;
+        case "authenticationrealm":
+        case "authenticationRealm": 
target.setAuthenticationRealm(property(camelContext, java.lang.String.class, 
value)); return true;
         case "basicpropertiesfile":
         case "basicPropertiesFile": 
target.setBasicPropertiesFile(property(camelContext, java.lang.String.class, 
value)); return true;
         case "devconsoleenabled":
@@ -110,6 +113,8 @@ public class 
HttpManagementServerConfigurationPropertiesConfigurer extends org.a
         case "authenticationEnabled": return boolean.class;
         case "authenticationpath":
         case "authenticationPath": return java.lang.String.class;
+        case "authenticationrealm":
+        case "authenticationRealm": return java.lang.String.class;
         case "basicpropertiesfile":
         case "basicPropertiesFile": return java.lang.String.class;
         case "devconsoleenabled":
@@ -160,6 +165,8 @@ public class 
HttpManagementServerConfigurationPropertiesConfigurer extends org.a
         case "authenticationEnabled": return target.isAuthenticationEnabled();
         case "authenticationpath":
         case "authenticationPath": return target.getAuthenticationPath();
+        case "authenticationrealm":
+        case "authenticationRealm": return target.getAuthenticationRealm();
         case "basicpropertiesfile":
         case "basicPropertiesFile": return target.getBasicPropertiesFile();
         case "devconsoleenabled":
diff --git 
a/core/camel-main/src/generated/java/org/apache/camel/main/HttpServerConfigurationPropertiesConfigurer.java
 
b/core/camel-main/src/generated/java/org/apache/camel/main/HttpServerConfigurationPropertiesConfigurer.java
index 17b45ad9a81..c4bbf04ce2d 100644
--- 
a/core/camel-main/src/generated/java/org/apache/camel/main/HttpServerConfigurationPropertiesConfigurer.java
+++ 
b/core/camel-main/src/generated/java/org/apache/camel/main/HttpServerConfigurationPropertiesConfigurer.java
@@ -24,6 +24,7 @@ public class HttpServerConfigurationPropertiesConfigurer 
extends org.apache.came
         Map<String, Object> map = new CaseInsensitiveMap();
         map.put("AuthenticationEnabled", boolean.class);
         map.put("AuthenticationPath", java.lang.String.class);
+        map.put("AuthenticationRealm", java.lang.String.class);
         map.put("BasicPropertiesFile", java.lang.String.class);
         map.put("Enabled", boolean.class);
         map.put("FileUploadDirectory", java.lang.String.class);
@@ -50,6 +51,8 @@ public class HttpServerConfigurationPropertiesConfigurer 
extends org.apache.came
         case "authenticationEnabled": 
target.setAuthenticationEnabled(property(camelContext, boolean.class, value)); 
return true;
         case "authenticationpath":
         case "authenticationPath": 
target.setAuthenticationPath(property(camelContext, java.lang.String.class, 
value)); return true;
+        case "authenticationrealm":
+        case "authenticationRealm": 
target.setAuthenticationRealm(property(camelContext, java.lang.String.class, 
value)); return true;
         case "basicpropertiesfile":
         case "basicPropertiesFile": 
target.setBasicPropertiesFile(property(camelContext, java.lang.String.class, 
value)); return true;
         case "enabled": target.setEnabled(property(camelContext, 
boolean.class, value)); return true;
@@ -92,6 +95,8 @@ public class HttpServerConfigurationPropertiesConfigurer 
extends org.apache.came
         case "authenticationEnabled": return boolean.class;
         case "authenticationpath":
         case "authenticationPath": return java.lang.String.class;
+        case "authenticationrealm":
+        case "authenticationRealm": return java.lang.String.class;
         case "basicpropertiesfile":
         case "basicPropertiesFile": return java.lang.String.class;
         case "enabled": return boolean.class;
@@ -130,6 +135,8 @@ public class HttpServerConfigurationPropertiesConfigurer 
extends org.apache.came
         case "authenticationEnabled": return target.isAuthenticationEnabled();
         case "authenticationpath":
         case "authenticationPath": return target.getAuthenticationPath();
+        case "authenticationrealm":
+        case "authenticationRealm": return target.getAuthenticationRealm();
         case "basicpropertiesfile":
         case "basicPropertiesFile": return target.getBasicPropertiesFile();
         case "enabled": return target.isEnabled();
diff --git 
a/core/camel-main/src/generated/resources/META-INF/camel-main-configuration-metadata.json
 
b/core/camel-main/src/generated/resources/META-INF/camel-main-configuration-metadata.json
index d4e27b859ea..3579da0b9db 100644
--- 
a/core/camel-main/src/generated/resources/META-INF/camel-main-configuration-metadata.json
+++ 
b/core/camel-main/src/generated/resources/META-INF/camel-main-configuration-metadata.json
@@ -194,6 +194,7 @@
     { "name": "camel.lra.localParticipantUrl", "required": false, 
"description": "The URL for the local participant", "sourceType": 
"org.apache.camel.main.LraConfigurationProperties", "type": "string", 
"javaType": "java.lang.String", "secret": false },
     { "name": "camel.management.authenticationEnabled", "required": false, 
"description": "Whether to enable HTTP authentication for embedded server (for 
standalone applications; not Spring Boot or Quarkus).", "sourceType": 
"org.apache.camel.main.HttpManagementServerConfigurationProperties", "type": 
"boolean", "javaType": "boolean", "defaultValue": "false", "secret": false },
     { "name": "camel.management.authenticationPath", "required": false, 
"description": "Set HTTP url path of embedded server that is protected by 
authentication configuration.", "sourceType": 
"org.apache.camel.main.HttpManagementServerConfigurationProperties", "type": 
"string", "javaType": "java.lang.String", "secret": false },
+    { "name": "camel.management.authenticationRealm", "required": false, 
"description": "Sets the authentication realm", "sourceType": 
"org.apache.camel.main.HttpManagementServerConfigurationProperties", "type": 
"string", "javaType": "java.lang.String", "secret": false },
     { "name": "camel.management.basicPropertiesFile", "required": false, 
"description": "Name of the file that contains basic authentication info for 
Vert.x file auth provider.", "sourceType": 
"org.apache.camel.main.HttpManagementServerConfigurationProperties", "type": 
"string", "javaType": "java.lang.String", "secret": false },
     { "name": "camel.management.devConsoleEnabled", "required": false, 
"description": "Whether to enable developer console (not intended for 
production use). Dev console must also be enabled on CamelContext. For example 
by setting camel.context.dev-console=true in application.properties, or via 
code camelContext.setDevConsole(true); If enabled then you can access a basic 
developer console on context-path: \/q\/dev.", "sourceType": 
"org.apache.camel.main.HttpManagementServerConfigurationP [...]
     { "name": "camel.management.downloadEnabled", "required": false, 
"description": "Whether to enable file download via HTTP. This makes it 
possible to browse and download resource source files such as Camel XML or YAML 
routes. Only enable this for development, troubleshooting or special situations 
for management and monitoring.", "sourceType": 
"org.apache.camel.main.HttpManagementServerConfigurationProperties", "type": 
"boolean", "javaType": "boolean", "defaultValue": "false", "secret" [...]
@@ -304,6 +305,7 @@
     { "name": "camel.routecontroller.unhealthyOnRestarting", "required": 
false, "description": "Whether to mark the route as unhealthy (down) when the 
route failed to initially start, and is being controlled for restarting 
(backoff). If setting this to false will make health checks ignore this problem 
and allow to report the Camel application as UP.", "sourceType": 
"org.apache.camel.main.RouteControllerConfigurationProperties", "type": 
"boolean", "javaType": "boolean", "defaultValue": tr [...]
     { "name": "camel.server.authenticationEnabled", "required": false, 
"description": "Whether to enable HTTP authentication for embedded server (for 
standalone applications; not Spring Boot or Quarkus).", "sourceType": 
"org.apache.camel.main.HttpServerConfigurationProperties", "type": "boolean", 
"javaType": "boolean", "defaultValue": "false", "secret": false },
     { "name": "camel.server.authenticationPath", "required": false, 
"description": "Set HTTP url path of embedded server that is protected by 
authentication configuration.", "sourceType": 
"org.apache.camel.main.HttpServerConfigurationProperties", "type": "string", 
"javaType": "java.lang.String", "secret": false },
+    { "name": "camel.server.authenticationRealm", "required": false, 
"description": "Sets the authentication realm", "sourceType": 
"org.apache.camel.main.HttpServerConfigurationProperties", "type": "string", 
"javaType": "java.lang.String", "secret": false },
     { "name": "camel.server.basicPropertiesFile", "required": false, 
"description": "Name of the file that contains basic authentication info for 
Vert.x file auth provider.", "sourceType": 
"org.apache.camel.main.HttpServerConfigurationProperties", "type": "string", 
"javaType": "java.lang.String", "secret": false },
     { "name": "camel.server.enabled", "required": false, "description": 
"Whether embedded HTTP server is enabled. By default, the server is not 
enabled.", "sourceType": 
"org.apache.camel.main.HttpServerConfigurationProperties", "type": "boolean", 
"javaType": "boolean", "defaultValue": "false", "secret": false },
     { "name": "camel.server.fileUploadDirectory", "required": false, 
"description": "Directory to temporary store file uploads while Camel routes 
the incoming request. If no directory has been explicit configured, then a 
temporary directory is created in the java.io.tmpdir directory.", "sourceType": 
"org.apache.camel.main.HttpServerConfigurationProperties", "type": "string", 
"javaType": "java.lang.String", "secret": false },
diff --git a/core/camel-main/src/main/docs/main.adoc 
b/core/camel-main/src/main/docs/main.adoc
index 32663a06d22..9046e64a37f 100644
--- a/core/camel-main/src/main/docs/main.adoc
+++ b/core/camel-main/src/main/docs/main.adoc
@@ -190,13 +190,14 @@ The camel.routecontroller supports 12 options, which are 
listed below.
 
 
 === Camel Embedded HTTP Server (only for standalone; not Spring Boot or 
Quarkus) configurations
-The camel.server supports 17 options, which are listed below.
+The camel.server supports 18 options, which are listed below.
 
 [width="100%",cols="2,5,^1,2",options="header"]
 |===
 | Name | Description | Default | Type
 | *camel.server.authentication{zwsp}Enabled* | Whether to enable HTTP 
authentication for embedded server (for standalone applications; not Spring 
Boot or Quarkus). | false | boolean
 | *camel.server.authentication{zwsp}Path* | Set HTTP url path of embedded 
server that is protected by authentication configuration. |  | String
+| *camel.server.authentication{zwsp}Realm* | Sets the authentication realm |  
| String
 | *camel.server.basicProperties{zwsp}File* | Name of the file that contains 
basic authentication info for Vert.x file auth provider. |  | String
 | *camel.server.enabled* | Whether embedded HTTP server is enabled. By 
default, the server is not enabled. | false | boolean
 | *camel.server.fileUpload{zwsp}Directory* | Directory to temporary store file 
uploads while Camel routes the incoming request. If no directory has been 
explicit configured, then a temporary directory is created in the 
java.io.tmpdir directory. |  | String
@@ -216,13 +217,14 @@ The camel.server supports 17 options, which are listed 
below.
 
 
 === Camel Embedded HTTP management Server (only for standalone; not Spring 
Boot or Quarkus) configurations
-The camel.management supports 23 options, which are listed below.
+The camel.management supports 24 options, which are listed below.
 
 [width="100%",cols="2,5,^1,2",options="header"]
 |===
 | Name | Description | Default | Type
 | *camel.management.authentication{zwsp}Enabled* | Whether to enable HTTP 
authentication for embedded server (for standalone applications; not Spring 
Boot or Quarkus). | false | boolean
 | *camel.management.authentication{zwsp}Path* | Set HTTP url path of embedded 
server that is protected by authentication configuration. |  | String
+| *camel.management.authentication{zwsp}Realm* | Sets the authentication realm 
|  | String
 | *camel.management.basic{zwsp}PropertiesFile* | Name of the file that 
contains basic authentication info for Vert.x file auth provider. |  | String
 | *camel.management.devConsole{zwsp}Enabled* | Whether to enable developer 
console (not intended for production use). Dev console must also be enabled on 
CamelContext. For example by setting camel.context.dev-console=true in 
application.properties, or via code camelContext.setDevConsole(true); If 
enabled then you can access a basic developer console on context-path: /q/dev. 
| false | boolean
 | *camel.management.download{zwsp}Enabled* | Whether to enable file download 
via HTTP. This makes it possible to browse and download resource source files 
such as Camel XML or YAML routes. Only enable this for development, 
troubleshooting or special situations for management and monitoring. | false | 
boolean
diff --git 
a/core/camel-main/src/main/java/org/apache/camel/main/HttpManagementServerConfigurationProperties.java
 
b/core/camel-main/src/main/java/org/apache/camel/main/HttpManagementServerConfigurationProperties.java
index ef78f494f09..3208e3c13de 100644
--- 
a/core/camel-main/src/main/java/org/apache/camel/main/HttpManagementServerConfigurationProperties.java
+++ 
b/core/camel-main/src/main/java/org/apache/camel/main/HttpManagementServerConfigurationProperties.java
@@ -60,6 +60,8 @@ public class HttpManagementServerConfigurationProperties 
implements BootstrapClo
     @Metadata(label = "security")
     private String authenticationPath;
     @Metadata(label = "security")
+    private String authenticationRealm;
+    @Metadata(label = "security")
     private String basicPropertiesFile;
     @Metadata(label = "security")
     private String jwtKeystoreType;
@@ -301,6 +303,17 @@ public class HttpManagementServerConfigurationProperties 
implements BootstrapClo
         this.authenticationPath = authenticationPath;
     }
 
+    public String getAuthenticationRealm() {
+        return authenticationRealm;
+    }
+
+    /**
+     * Sets the authentication realm
+     */
+    public void setAuthenticationRealm(String authenticationRealm) {
+        this.authenticationRealm = authenticationRealm;
+    }
+
     public String getBasicPropertiesFile() {
         return basicPropertiesFile;
     }
@@ -485,6 +498,14 @@ public class HttpManagementServerConfigurationProperties 
implements BootstrapClo
         return this;
     }
 
+    /**
+     * Sets the authentication realm
+     */
+    public HttpManagementServerConfigurationProperties 
withAuthenticationRealm(String authenticationRealm) {
+        this.authenticationRealm = authenticationRealm;
+        return this;
+    }
+
     /**
      * Name of the file that contains basic authentication info for Vert.x 
file auth provider.
      */
diff --git 
a/core/camel-main/src/main/java/org/apache/camel/main/HttpServerConfigurationProperties.java
 
b/core/camel-main/src/main/java/org/apache/camel/main/HttpServerConfigurationProperties.java
index 1172c9464b2..1ee4e23d2f0 100644
--- 
a/core/camel-main/src/main/java/org/apache/camel/main/HttpServerConfigurationProperties.java
+++ 
b/core/camel-main/src/main/java/org/apache/camel/main/HttpServerConfigurationProperties.java
@@ -55,6 +55,8 @@ public class HttpServerConfigurationProperties implements 
BootstrapCloseable {
     @Metadata(label = "security")
     private String authenticationPath;
     @Metadata(label = "security")
+    private String authenticationRealm;
+    @Metadata(label = "security")
     private String basicPropertiesFile;
     @Metadata(label = "security")
     private String jwtKeystoreType;
@@ -226,6 +228,17 @@ public class HttpServerConfigurationProperties implements 
BootstrapCloseable {
         this.authenticationPath = authenticationPath;
     }
 
+    public String getAuthenticationRealm() {
+        return authenticationRealm;
+    }
+
+    /**
+     * Sets the authentication realm
+     */
+    public void setAuthenticationRealm(String authenticationRealm) {
+        this.authenticationRealm = authenticationRealm;
+    }
+
     public String getBasicPropertiesFile() {
         return basicPropertiesFile;
     }
@@ -381,6 +394,14 @@ public class HttpServerConfigurationProperties implements 
BootstrapCloseable {
         return this;
     }
 
+    /**
+     * Sets the authentication realm
+     */
+    public HttpServerConfigurationProperties withAuthenticationRealm(String 
authenticationRealm) {
+        this.authenticationRealm = authenticationRealm;
+        return this;
+    }
+
     /**
      * Name of the file that contains basic authentication info for Vert.x 
file auth provider.
      */

Reply via email to