Skip to content

Commit ffaf849

Browse files
committed
chore(nifi): Add nifi 2.6.0, bump dependencies
1 parent 51e4395 commit ffaf849

File tree

8 files changed

+246
-4
lines changed

8 files changed

+246
-4
lines changed

nifi/boil-config.toml

Lines changed: 26 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,21 +4,43 @@ java-devel = "11"
44

55
[versions."1.27.0".build-arguments]
66
git-sync-version = "v4.4.1"
7-
nifi-opa-authorizer-plugin-version = "0.1.0"
7+
# Check for new versions at the upstream: https://github.com/DavidGitter/nifi-opa-plugin/tags
8+
# Checkout a Patchable version (patch-series) for the new tag
9+
nifi-opa-authorizer-plugin-version = "0.3.0"
810

911
[versions."1.28.1".local-images]
1012
java-base = "11"
1113
java-devel = "11"
1214

1315
[versions."1.28.1".build-arguments]
1416
git-sync-version = "v4.4.1"
15-
nifi-opa-authorizer-plugin-version = "0.1.0"
17+
# Check for new versions at the upstream: https://github.com/DavidGitter/nifi-opa-plugin/tags
18+
# Checkout a Patchable version (patch-series) for the new tag
19+
nifi-opa-authorizer-plugin-version = "0.3.0"
1620

1721
[versions."2.4.0".local-images]
1822
java-base = "21"
1923
java-devel = "21"
2024

2125
[versions."2.4.0".build-arguments]
2226
git-sync-version = "v4.4.1"
23-
nifi-opa-authorizer-plugin-version = "0.1.0"
24-
nifi-iceberg-bundle-version = "0.0.4"
27+
# Check for new versions at the upstream: https://github.com/DavidGitter/nifi-opa-plugin/tags
28+
# Checkout a Patchable version (patch-series) for the new tag
29+
nifi-opa-authorizer-plugin-version = "0.3.0"
30+
# Release a new version here: https://github.com/stackabletech/nifi-iceberg-bundle
31+
# Checkout a Patchable version (patch-series) for the new tag
32+
nifi-iceberg-bundle-version = "0.0.5"
33+
34+
[versions."2.6.0".local-images]
35+
java-base = "21"
36+
java-devel = "21"
37+
38+
[versions."2.6.0".build-arguments]
39+
git-sync-version = "v4.4.1"
40+
# Check for new versions at the upstream: https://github.com/DavidGitter/nifi-opa-plugin/tags
41+
# Checkout a Patchable version (patch-series) for the new tag
42+
nifi-opa-authorizer-plugin-version = "0.3.0"
43+
44+
# Release a new version here: https://github.com/stackabletech/nifi-iceberg-bundle
45+
# Checkout a Patchable version (patch-series) for the new tag
46+
nifi-iceberg-bundle-version = "0.0.5"
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
base = "c305d47c3678d16250374e9dc89bc184b8c36892"
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
mirror = "https://github.com/stackabletech/nifi-opa-plugin.git"
2+
base = "728367a22e897479b4d8157b151ff1abca038d3d"
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
From e20550884c2d7002013b9427c219128fe416263b Mon Sep 17 00:00:00 2001
2+
From: Nick Larsen <nick.larsen@stackable.tech>
3+
Date: Mon, 17 Feb 2025 17:26:20 +0100
4+
Subject: no zip assembly
5+
6+
---
7+
nifi-assembly/pom.xml | 1 -
8+
1 file changed, 1 deletion(-)
9+
10+
diff --git a/nifi-assembly/pom.xml b/nifi-assembly/pom.xml
11+
index dc7fe6fff3..911cbc83d3 100644
12+
--- a/nifi-assembly/pom.xml
13+
+++ b/nifi-assembly/pom.xml
14+
@@ -66,7 +66,6 @@ language governing permissions and limitations under the License. -->
15+
<tarLongFileMode>posix</tarLongFileMode>
16+
<formats>
17+
<format>dir</format>
18+
- <format>zip</format>
19+
</formats>
20+
</configuration>
21+
</execution>
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
From 0ced60d4c0a49bcf975ce5a3f368a0075988a45f Mon Sep 17 00:00:00 2001
2+
From: Nick Larsen <nick.larsen@stackable.tech>
3+
Date: Mon, 17 Feb 2025 17:31:17 +0100
4+
Subject: add cyclonedx plugin
5+
6+
---
7+
pom.xml | 18 ++++++++++++++++++
8+
1 file changed, 18 insertions(+)
9+
10+
diff --git a/pom.xml b/pom.xml
11+
index b9ebbf44de..52639e1211 100644
12+
--- a/pom.xml
13+
+++ b/pom.xml
14+
@@ -1029,6 +1029,24 @@
15+
</rulesets>
16+
</configuration>
17+
</plugin>
18+
+ <plugin>
19+
+ <groupId>org.cyclonedx</groupId>
20+
+ <artifactId>cyclonedx-maven-plugin</artifactId>
21+
+ <version>2.8.0</version>
22+
+ <configuration>
23+
+ <projectType>application</projectType>
24+
+ <schemaVersion>1.5</schemaVersion>
25+
+ <skipNotDeployed>false</skipNotDeployed>
26+
+ </configuration>
27+
+ <executions>
28+
+ <execution>
29+
+ <phase>package</phase>
30+
+ <goals>
31+
+ <goal>makeBom</goal>
32+
+ </goals>
33+
+ </execution>
34+
+ </executions>
35+
+ </plugin>
36+
</plugins>
37+
</build>
38+
<profiles>
Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
From 081a3a5e2e94d10b43f23f5f1bda7c2db8b4044b Mon Sep 17 00:00:00 2001
2+
From: Benedikt Labrenz <benedikt@labrenz.org>
3+
Date: Thu, 22 May 2025 14:47:24 +0200
4+
Subject: disable host port validation if list of allowed hosts only contains
5+
'*'
6+
7+
---
8+
.../connector/FrameworkServerConnectorFactory.java | 13 +++++++++++--
9+
1 file changed, 11 insertions(+), 2 deletions(-)
10+
11+
diff --git a/nifi-framework-bundle/nifi-framework/nifi-web/nifi-jetty/src/main/java/org/apache/nifi/web/server/connector/FrameworkServerConnectorFactory.java b/nifi-framework-bundle/nifi-framework/nifi-web/nifi-jetty/src/main/java/org/apache/nifi/web/server/connector/FrameworkServerConnectorFactory.java
12+
index 1b28722a3f..72986669d5 100644
13+
--- a/nifi-framework-bundle/nifi-framework/nifi-web/nifi-jetty/src/main/java/org/apache/nifi/web/server/connector/FrameworkServerConnectorFactory.java
14+
+++ b/nifi-framework-bundle/nifi-framework/nifi-web/nifi-jetty/src/main/java/org/apache/nifi/web/server/connector/FrameworkServerConnectorFactory.java
15+
@@ -54,6 +54,8 @@ public class FrameworkServerConnectorFactory extends StandardServerConnectorFact
16+
17+
private final String excludeCipherSuites;
18+
19+
+ private final boolean disableHostPortValidator;
20+
+
21+
private final Set<Integer> validPorts;
22+
23+
private SslContextFactory.Server sslContextFactory;
24+
@@ -72,6 +74,11 @@ public class FrameworkServerConnectorFactory extends StandardServerConnectorFact
25+
headerSize = DataUnit.parseDataSize(properties.getWebMaxHeaderSize(), DataUnit.B).intValue();
26+
validPorts = getValidPorts(properties);
27+
28+
+ // Check if the property for allowed hosts has only the wildcard entry and
29+
+ // if so store this in disableHostPortValidator for later use
30+
+ List<String> configuredHostNames = properties.getAllowedHostsAsList();
31+
+ disableHostPortValidator = configuredHostNames.size() == 1 && configuredHostNames.contains("*");
32+
+
33+
if (properties.isHTTPSConfigured()) {
34+
if (properties.isClientAuthRequiredForRestApi()) {
35+
setNeedClientAuth(true);
36+
@@ -102,8 +109,10 @@ public class FrameworkServerConnectorFactory extends StandardServerConnectorFact
37+
// Add HostHeaderCustomizer to set Host Header for HTTP/2 and HostHeaderHandler
38+
httpConfiguration.addCustomizer(new HostHeaderCustomizer());
39+
40+
- final HostPortValidatorCustomizer hostPortValidatorCustomizer = new HostPortValidatorCustomizer(validPorts);
41+
- httpConfiguration.addCustomizer(hostPortValidatorCustomizer);
42+
+ if (!disableHostPortValidator) {
43+
+ final HostPortValidatorCustomizer hostPortValidatorCustomizer = new HostPortValidatorCustomizer(validPorts);
44+
+ httpConfiguration.addCustomizer(hostPortValidatorCustomizer);
45+
+ }
46+
47+
return httpConfiguration;
48+
}
Lines changed: 108 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,108 @@
1+
From 22fff64167758481f7c66a85bc86df1467928e00 Mon Sep 17 00:00:00 2001
2+
From: Lars Francke <git@lars-francke.de>
3+
Date: Wed, 13 Aug 2025 14:16:55 +0200
4+
Subject: NIFI-14858: Make SNI checking configurable
5+
6+
Introduces two new properties:
7+
- nifi.web.https.sni.required (default: false)
8+
- nifi.web.https.sni.host.check (default: true)
9+
10+
These defaults mean that SNI is not required (this is the current behavior already) but if SNI is provided then the host has to match.
11+
---
12+
.../StandardServerConnectorFactory.java | 24 +++++++++++++++++++
13+
.../org/apache/nifi/util/NiFiProperties.java | 10 ++++++++
14+
.../FrameworkServerConnectorFactory.java | 4 ++++
15+
3 files changed, 38 insertions(+)
16+
17+
diff --git a/nifi-commons/nifi-jetty-configuration/src/main/java/org/apache/nifi/jetty/configuration/connector/StandardServerConnectorFactory.java b/nifi-commons/nifi-jetty-configuration/src/main/java/org/apache/nifi/jetty/configuration/connector/StandardServerConnectorFactory.java
18+
index 26d09706a1..132973cad5 100644
19+
--- a/nifi-commons/nifi-jetty-configuration/src/main/java/org/apache/nifi/jetty/configuration/connector/StandardServerConnectorFactory.java
20+
+++ b/nifi-commons/nifi-jetty-configuration/src/main/java/org/apache/nifi/jetty/configuration/connector/StandardServerConnectorFactory.java
21+
@@ -70,6 +70,10 @@ public class StandardServerConnectorFactory implements ServerConnectorFactory {
22+
23+
private int requestHeaderSize = 8192;
24+
25+
+ private boolean sniRequired = false;
26+
+
27+
+ private boolean sniHostCheck = true;
28+
+
29+
/**
30+
* Standard Server Connector Factory Constructor with required properties
31+
*
32+
@@ -181,6 +185,24 @@ public class StandardServerConnectorFactory implements ServerConnectorFactory {
33+
this.requestHeaderSize = requestHeaderSize;
34+
}
35+
36+
+ /**
37+
+ * Set to true if a SNI certificate is required, else requests will be rejected with 400 response.
38+
+ *
39+
+ * @param sniRequired SNI Required status
40+
+ */
41+
+ public void setSniRequired(final boolean sniRequired) {
42+
+ this.sniRequired = sniRequired;
43+
+ }
44+
+
45+
+ /**
46+
+ * Set to true if the SNI Host name must match when there is an SNI certificate.
47+
+ *
48+
+ * @param sniHostCheck SNI Host Check status
49+
+ */
50+
+ public void setSniHostCheck(final boolean sniHostCheck) {
51+
+ this.sniHostCheck = sniHostCheck;
52+
+ }
53+
+
54+
protected Server getServer() {
55+
return server;
56+
}
57+
@@ -195,6 +217,8 @@ public class StandardServerConnectorFactory implements ServerConnectorFactory {
58+
httpConfiguration.setSendServerVersion(SEND_SERVER_VERSION);
59+
60+
final SecureRequestCustomizer secureRequestCustomizer = new SecureRequestCustomizer();
61+
+ secureRequestCustomizer.setSniRequired(sniRequired);
62+
+ secureRequestCustomizer.setSniHostCheck(sniHostCheck);
63+
httpConfiguration.addCustomizer(secureRequestCustomizer);
64+
}
65+
66+
diff --git a/nifi-commons/nifi-properties/src/main/java/org/apache/nifi/util/NiFiProperties.java b/nifi-commons/nifi-properties/src/main/java/org/apache/nifi/util/NiFiProperties.java
67+
index 9e85c05d22..89d81813f4 100644
68+
--- a/nifi-commons/nifi-properties/src/main/java/org/apache/nifi/util/NiFiProperties.java
69+
+++ b/nifi-commons/nifi-properties/src/main/java/org/apache/nifi/util/NiFiProperties.java
70+
@@ -205,6 +205,8 @@ public class NiFiProperties extends ApplicationProperties {
71+
public static final String WEB_HTTPS_CIPHERSUITES_INCLUDE = "nifi.web.https.ciphersuites.include";
72+
public static final String WEB_HTTPS_CIPHERSUITES_EXCLUDE = "nifi.web.https.ciphersuites.exclude";
73+
public static final String WEB_HTTPS_NETWORK_INTERFACE_PREFIX = "nifi.web.https.network.interface.";
74+
+ public static final String WEB_HTTPS_SNI_REQUIRED = "nifi.web.https.sni.required";
75+
+ public static final String WEB_HTTPS_SNI_HOST_CHECK = "nifi.web.https.sni.host.check";
76+
public static final String WEB_WORKING_DIR = "nifi.web.jetty.working.directory";
77+
public static final String WEB_THREADS = "nifi.web.jetty.threads";
78+
public static final String WEB_MAX_HEADER_SIZE = "nifi.web.max.header.size";
79+
@@ -709,6 +711,14 @@ public class NiFiProperties extends ApplicationProperties {
80+
return Arrays.stream(protocols.split("\\s+")).collect(Collectors.toSet());
81+
}
82+
83+
+ public boolean isWebHttpsSniRequired() {
84+
+ return Boolean.parseBoolean(getProperty(WEB_HTTPS_SNI_REQUIRED, "true"));
85+
+ }
86+
+
87+
+ public boolean isWebHttpsSniHostCheck() {
88+
+ return Boolean.parseBoolean(getProperty(WEB_HTTPS_SNI_HOST_CHECK, "true"));
89+
+ }
90+
+
91+
public String getWebMaxHeaderSize() {
92+
return getProperty(WEB_MAX_HEADER_SIZE, DEFAULT_WEB_MAX_HEADER_SIZE);
93+
}
94+
diff --git a/nifi-framework-bundle/nifi-framework/nifi-web/nifi-jetty/src/main/java/org/apache/nifi/web/server/connector/FrameworkServerConnectorFactory.java b/nifi-framework-bundle/nifi-framework/nifi-web/nifi-jetty/src/main/java/org/apache/nifi/web/server/connector/FrameworkServerConnectorFactory.java
95+
index 72986669d5..993b23889c 100644
96+
--- a/nifi-framework-bundle/nifi-framework/nifi-web/nifi-jetty/src/main/java/org/apache/nifi/web/server/connector/FrameworkServerConnectorFactory.java
97+
+++ b/nifi-framework-bundle/nifi-framework/nifi-web/nifi-jetty/src/main/java/org/apache/nifi/web/server/connector/FrameworkServerConnectorFactory.java
98+
@@ -90,6 +90,10 @@ public class FrameworkServerConnectorFactory extends StandardServerConnectorFact
99+
100+
// Set Transport Layer Security Protocols based on platform configuration
101+
setIncludeSecurityProtocols(TlsPlatform.getPreferredProtocols().toArray(new String[0]));
102+
+
103+
+ // Set SNI configuration from properties
104+
+ setSniRequired(properties.isWebHttpsSniRequired());
105+
+ setSniHostCheck(properties.isWebHttpsSniHostCheck());
106+
}
107+
}
108+
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
mirror = "https://github.com/stackabletech/nifi.git"
2+
base = "27bdbfda4d8dec2006b8b279db790faf172e76fd"

0 commit comments

Comments
 (0)