You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Apache NiFi升级至1.18后PBEWITHMD5AND256BITAES-CBC-OPENSSL报错解决

解决Apache NiFi 1.13升级到1.18后的加密算法弃用警告问题

问题原因

NiFi 1.18版本中,PBEWITHMD5AND256BITAES-CBC-OPENSSL加密算法因安全性缺陷被标记为不安全,对应的NiFiLegacyCipherProvider类也已被弃用。升级后系统加载旧配置时会触发该警告,依赖此算法的数据流组件也会出现相同错误。

解决步骤

  • 更新全局加密配置
    编辑NiFi核心配置文件nifi.properties,修改以下属性:

    • 将nifi.sensitive.props.algorithm的值从PBEWITHMD5AND256BITAES-CBC-OPENSSL替换为推荐的安全算法,例如PBKDF2WithHmacSHA256AndAES_256
    • 确保nifi.sensitive.props.provider设置为BC(NiFi默认集成BouncyCastle加密提供者)
  • 重新处理敏感属性

    1. 停止NiFi服务
    2. 通过Web GUI重新配置使用旧算法的控制器服务(如SSL上下文服务),更新加密配置并重新输入敏感信息(密钥、密码等);或使用NiFi加密工具批量重新加密敏感属性
    3. 启动NiFi服务,验证数据流运行状态
  • 清理遗留配置

    • 检查流程配置文件flow.xml.gz,手动更新硬编码使用旧算法的组件配置
    • 删除./work目录下的临时缓存文件,避免加载旧配置残留

错误日志中文翻译

警告 [main] d.o.a.n.s.u.c.NiFiLegacyCipherProvider 请求了不安全的加密算法 [PBEWITHMD5AND256BITAES-CBC-OPENSSL]
org.apache.nifi.deprecation.log.DeprecationException: 引用类 [org.apache.nifi.security.util.crypto.NiFiLegacyCipherProvider] 类加载器 [org.apache.nifi.nar.NarClassLoader[./work/nar/framework/nifi-framework-nar-1.18.0.nar-unpacked]]
在 org.apache.nifi.deprecation.log.StandardDeprecationLogger.getExtendedArguments(StandardDeprecationLogger.java:63)
在 org.apache.nifi.deprecation.log.StandardDeprecationLogger.warn(StandardDeprecationLogger.java:54)
在 org.apache.nifi.security.util.crypto.NiFiLegacyCipherProvider.getCipher(NiFiLegacyCipherProvider.java:66)
在 org.apache.nifi.encrypt.PasswordBasedCipherPropertyEncryptor.getCipher(PasswordBasedCipherPropertyEncryptor.java:119)
在 org.apache.nifi.encrypt.PasswordBasedCipherPropertyEncryptor.getEncryptionCipher(PasswordBasedCipherPropertyEncryptor.java:84)
在 org.apache.nifi.encrypt.CipherPropertyEncryptor.encrypt(CipherPropertyEncryptor.java:52)
在 org.apache.nifi.controller.serialization.StandardFlowSerializer.addConfiguration(StandardFlowSerializer.java:562)
在 org.apache.nifi.controller.serialization.StandardFlowSerializer.addControllerService(StandardFlowSerializer.java:657)
在 org.apache.nifi.controller.serialization.StandardFlowSerializer.addProcessGroup(StandardFlowSerializer.java:315)
在 org.apache.nifi.controller.serialization.StandardFlowSerializer.transform(StandardFlowSerializer.java:111)
在 org.apache.nifi.controller.serialization.StandardFlowSerializer.transform(StandardFlowSerializer.java:79)
在 org.apache.nifi.controller.FlowController.serialize(FlowController.java:1423)
在 org.apache.nifi.persistence.StandardFlowConfigurationDAO.serializeControllerStateToTempFile(StandardFlowConfigurationDAO.java:235)
在 org.apache.nifi.persistence.StandardFlowConfigurationDAO.saveFlow(StandardFlowConfigurationDAO.java:210)
在 org.apache.nifi.persistence.StandardFlowConfigurationDAO.saveXml(StandardFlowConfigurationDAO.java:203)
在 org.apache.nifi.persistence.StandardFlowConfigurationDAO.save(StandardFlowConfigurationDAO.java:191)
在 org.apache.nifi.controller.StandardFlowService.load(StandardFlowService.java:560)
在 org.apache.nifi.web.contextlistener.ApplicationStartupContextListener.contextInitialized(ApplicationStartupContextListener.java:67)
在 org.eclipse.jetty.server.handler.ContextHandler.callContextInitialized(ContextHandler.java:1073)
在 org.eclipse.jetty.servlet.ServletContextHandler.callContextInitialized(ServletContextHandler.java:572)
在 org.eclipse.jetty.server.handler.ContextHandler.contextInitialized(ContextHandler.java:1002)

内容的提问来源于stack exchange,提问作者Emrahall

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 10:50:42