Dear NiFi Team,

Did I overlook something when upgrading from 2.6.0 to 2.7.1 with regard to the keystore and truststore files? Of course, I completely customized nifi.properties (format, passwords, path, etc.).
However, when I start 2.7.1, I get the following error:

java.util.concurrent.ExecutionException: java.lang.IllegalStateException: Enabling StandardControllerServiceNode[service=SSLContextService[id=b3942123-018b-1000-3507-9ecf751f5bbc], name=StandardRestrictedSSLContextService, active=true] failed: Validation Status [INVALID] Errors ['Keystore Properties' is invalid because Invalid keystore password or type specified for file [/opt/nifi/current/conf/keystore.pkcs12]: keystore password was incorrect, 'Truststore Properties' is invalid because Invalid truststore password or type specified for file [/opt/nifi/current/conf/truststore.jks]: Keystore was tampered with, or password was incorrect]         at java.base/java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:396)         at java.base/java.util.concurrent.CompletableFuture.get(CompletableFuture.java:2096)         at org.apache.nifi.controller.service.StandardControllerServiceProvider.enableControllerServices(StandardControllerServiceProvider.java:261)         at org.apache.nifi.controller.serialization.VersionedFlowSynchronizer.inheritControllerServices(VersionedFlowSynchronizer.java:1057)         at org.apache.nifi.controller.serialization.VersionedFlowSynchronizer.synchronizeFlow(VersionedFlowSynchronizer.java:416)         at org.apache.nifi.controller.serialization.VersionedFlowSynchronizer.sync(VersionedFlowSynchronizer.java:221)         at org.apache.nifi.controller.FlowController.synchronize(FlowController.java:1817)         at org.apache.nifi.persistence.StandardFlowConfigurationDAO.load(StandardFlowConfigurationDAO.java:91)         at org.apache.nifi.controller.StandardFlowService.loadFromBytes(StandardFlowService.java:762)         at org.apache.nifi.controller.StandardFlowService.load(StandardFlowService.java:483)         at org.apache.nifi.web.contextlistener.ApplicationStartupContextListener.contextInitialized(ApplicationStartupContextListener.java:67)         at org.eclipse.jetty.ee11.servlet.ServletContextHandler.callContextInitialized(ServletContextHandler.java:1609)         at org.eclipse.jetty.ee11.servlet.ServletContextHandler.contextInitialized(ServletContextHandler.java:498)         at org.eclipse.jetty.ee11.servlet.ServletHandler.initialize(ServletHandler.java:676)         at org.eclipse.jetty.ee11.servlet.ServletContextHandler.startContext(ServletContextHandler.java:1343)
...

        at org.apache.nifi.NiFi.main(NiFi.java:42)
Caused by: java.lang.IllegalStateException: Enabling StandardControllerServiceNode[service=SSLContextService[id=b3942123-018b-1000-3507-9ecf751f5bbc], name=StandardRestrictedSSLContextService, active=true] failed: Validation Status [INVALID] Errors ['Keystore Properties' is invalid because Invalid keystore password or type specified for file [/opt/nifi/current/conf/keystore.pkcs12]: keystore password was incorrect, 'Truststore Properties' is invalid because Invalid truststore password or type specified for file [/opt/nifi/current/conf/truststore.jks]: Keystore was tampered with, or password was incorrect]         at org.apache.nifi.controller.service.StandardControllerServiceNode$2.run(StandardControllerServiceNode.java:659)         at org.apache.nifi.engine.FlowEngine.lambda$wrap$1(FlowEngine.java:105)         at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572)         at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)         at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)         at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)         at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
        at java.base/java.lang.Thread.run(Thread.java:1583)


2025-12-14 13:53:02,962 ERROR [Timer-Driven Process Thread-2] o.a.n.s.StandardRestrictedSSLContextService SSLContextService[id=b3942123-018b-1000-3507-9ecf751f5bbc] Failed to invoke @OnEnabled method org.apache.nifi.reporting.InitializationException: SSLContextService[id=b3942123-018b-1000-3507-9ecf751f5bbc] is not valid due to: 'Keystore Properties' is invalid because Invalid keystore password or type specified for file [/opt/nifi/current/conf/keystore.pkcs12]: keystore password was incorrect 'Truststore Properties' is invalid because Invalid truststore password or type specified for file [/opt/nifi/current/conf/truststore.jks]: Keystore was tampered with, or password was incorrect         at org.apache.nifi.ssl.StandardSSLContextService.onConfigured(StandardSSLContextService.java:175)         at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
        at java.base/java.lang.reflect.Method.invoke(Method.java:580)
        at org.apache.nifi.util.ReflectionUtils.invokeMethodsWithAnnotations(ReflectionUtils.java:145)         at org.apache.nifi.util.ReflectionUtils.invokeMethodsWithAnnotations(ReflectionUtils.java:133)         at org.apache.nifi.util.ReflectionUtils.invokeMethodsWithAnnotations(ReflectionUtils.java:78)         at org.apache.nifi.util.ReflectionUtils.invokeMethodsWithAnnotation(ReflectionUtils.java:55)         at org.apache.nifi.controller.service.StandardControllerServiceNode$2.run(StandardControllerServiceNode.java:685)         at org.apache.nifi.engine.FlowEngine.lambda$wrap$1(FlowEngine.java:105)         at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572)         at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)         at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)         at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)         at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
        at java.base/java.lang.Thread.run(Thread.java:1583)


*I have set all properties exactly as I did with 2.6., which have the following format:*

nifi.sensitive.props.key=XXXXXXXXXXXXXXXXXXXXXXXXXXX
nifi.sensitive.props.algorithm=NIFI_PBKDF2_AES_GCM_256

nifi.security.autoreload.enabled=false
nifi.security.autoreload.interval=10 secs
nifi.security.keystore=./conf/keystore.pkcs12
nifi.security.keystore.certificate=
nifi.security.keystore.privateKey=
nifi.security.keystoreType=PKCS12
nifi.security.keystorePasswd=XXXXXXXXXXXXXXXXXXXXXXXXXXX
nifi.security.keyPasswd=XXXXXXXXXXXXXXXXXXXXXXXXXXX
nifi.security.truststore=./conf/truststore.jks
nifi.security.truststore.certificate=
nifi.security.truststoreType=jks
nifi.security.truststorePasswd=XXXXXXXXXXXXXXXXXXXXXXXXXXX


This has worked with all upgrades so far. Has anything changed in 2.7.1?

Regards,
Kay-Uwe

Reply via email to