This is an automated email from the ASF dual-hosted git repository.
exceptionfactory pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/nifi.git
The following commit(s) were added to refs/heads/main by this push:
new 6d266167f6 NIFI-15278 Added support for Namespaces to HashiCorp Vault
Configuration (#10586)
6d266167f6 is described below
commit 6d266167f6b84724614461a669800e421791ea7e
Author: Bruno Michel <[email protected]>
AuthorDate: Tue Dec 2 23:30:48 2025 +0100
NIFI-15278 Added support for Namespaces to HashiCorp Vault Configuration
(#10586)
Signed-off-by: David Handermann <[email protected]>
---
.../config/HashiCorpVaultConfiguration.java | 20 +++++++++++++++++++-
1 file changed, 19 insertions(+), 1 deletion(-)
diff --git
a/nifi-commons/nifi-hashicorp-vault/src/main/java/org/apache/nifi/vault/hashicorp/config/HashiCorpVaultConfiguration.java
b/nifi-commons/nifi-hashicorp-vault/src/main/java/org/apache/nifi/vault/hashicorp/config/HashiCorpVaultConfiguration.java
index f20335eeb4..cd7fd8900e 100644
---
a/nifi-commons/nifi-hashicorp-vault/src/main/java/org/apache/nifi/vault/hashicorp/config/HashiCorpVaultConfiguration.java
+++
b/nifi-commons/nifi-hashicorp-vault/src/main/java/org/apache/nifi/vault/hashicorp/config/HashiCorpVaultConfiguration.java
@@ -23,7 +23,11 @@ import org.springframework.core.env.PropertySource;
import org.springframework.core.env.StandardEnvironment;
import org.springframework.core.io.FileSystemResource;
import org.springframework.core.io.support.ResourcePropertySource;
+import org.springframework.http.client.ClientHttpRequestFactory;
+import org.springframework.vault.client.RestTemplateBuilder;
import org.springframework.vault.client.RestTemplateFactory;
+import org.springframework.vault.client.VaultEndpointProvider;
+import org.springframework.vault.client.VaultHttpHeaders;
import org.springframework.vault.config.EnvironmentVaultConfiguration;
import
org.springframework.vault.core.VaultKeyValueOperationsSupport.KeyValueBackend;
import org.springframework.vault.support.ClientOptions;
@@ -47,7 +51,8 @@ public class HashiCorpVaultConfiguration extends
EnvironmentVaultConfiguration {
READ_TIMEOUT("vault.read.timeout"),
CONNECTION_TIMEOUT("vault.connection.timeout"),
KV_VERSION("vault.kv.version"),
- URI("vault.uri");
+ URI("vault.uri"),
+ NAMESPACE("vault.namespace");
private final String key;
@@ -165,6 +170,19 @@ public class HashiCorpVaultConfiguration extends
EnvironmentVaultConfiguration {
return this.restTemplateFactory(clientHttpRequestFactoryWrapper());
}
+ @Override
+ protected RestTemplateBuilder restTemplateBuilder(final
VaultEndpointProvider endpointProvider,
+ final
ClientHttpRequestFactory requestFactory) {
+ RestTemplateBuilder builder =
super.restTemplateBuilder(endpointProvider, requestFactory);
+ final String namespace =
getEnvironment().getProperty(VaultConfigurationKey.NAMESPACE.key);
+
+ if (namespace != null && !namespace.isEmpty()) {
+ builder = builder.defaultHeader(VaultHttpHeaders.VAULT_NAMESPACE,
namespace);
+ }
+
+ return builder;
+ }
+
@Override
public SslConfiguration sslConfiguration() {
return sslConfiguration;