Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Added Legacy and Alternative Sensitive Properties Algorithms

...

Migrating deprecated features requires changes to application properties or custom component implementations. The steps involved will be different based on implementation details and deployment use cases.

Legacy and Alternative Sensitive Properties Algorithms

Component

org.apache.nifi.encrypt.PropertyEncryptorBuilder

Bundle Grouporg.apache.nifi
Bundle Artifactnifi-property-encryptor
Deprecation TypeAllowed Values
Deprecated Version1.21.0
Migration DifficultyLOW
Migration TypeProperty Update

Migration

The nifi.sensitive.props.algorithm property in the nifi.properties configuration has supported a large number of possible values, including improved algorithms introduced in NiFi 1.14.0.

Starting with NiFi 1.14.0, the default value of the Sensitive Properties Algorithm changed from PBEWITHMD5AND256BITAES-CBC-OPENSSL to NIFI_PBKDF2_AES_GCM_256.

NiFi 1.18.0 added deprecation warnings for all algorithms starting with PBE.

NiFi 1.21.0 added deprecation for the following values using the bcrypt or scrypt algorithms, as well as other values using 128 bit keys.

  • NIFI_ARGON2_AES_GCM_128
  • NIFI_BCRYPT_AES_GCM_128
  • NIFI_BCRYPT_AES_GCM_256
  • NIFI_PBKDF2_AES_GCM_128
  • NIFI_SCRYPT_AES_GCM_128
  • NIFI_SCRYPT_AES_GCM_256

NiFi 2.0.0 supports the following options:

  • NIFI_ARGON2_AES_GCM_256
  • NIFI_PBKDF2_AES_GCM_256

Running the nifi.sh command supports migrating from a deprecated algorithm to a supported algorithm.

nifi.sh set-sensitive-properties-algorithm NIFI_PBKDF2_AES_GCM_256

The Administrator's Guide provides additional details related to setting the Sensitive Properties Algorithm.

ProcessContext encrypt and decrypt methods

Component

org.apache.nifi.processor.ProcessContext

Bundle Grouporg.apache.nifi
Bundle Artifactnifi-api
Deprecation TypeInterface Method
Deprecated Version1.20.0
Migration DifficultyHIGH
Migration TypeImplementation redesign

Migration

The ProcessContext interface provides property and component configuration information to Processors through the onTrigger method. The encrypt and decrypt methods supported enciphering and deciphering component-provided strings using the Sensitive Properties Key and Sensitive Properties Algorithm configured in nifi.properties.

...

SSLContextService createSSLContext methods

Component

org.apache.nifi.ssl.SSLContextService

Bundle Grouporg.apache.nifi
Bundle Artifactnifi-ssl-context-service-api
Deprecation TypeInterface Method
Deprecated Version1.13.0
Migration DifficultyLOW
Migration TypeMethod invocation changes

Migration

The SSLContextService interface is a standard Controller Service that supports TLS communication for network services. The createSSLContext methods accepted a Client Authentication argument that did not apply to SSLContext instances. The replacement createContext method provides the same runtime behavior without requiring any arguments. Updating custom code to compile against Apache NiFi 1.13.0 or greater and switching to the createContext method provides compatibility with Apache NiFi 2.0.0.

...

Component Class

org.apache.nifi.processors.standard.EncodeContent

Bundle Grouporg.apache.nifi
Bundle Artifactnifi-standard-nar

Migration

Base64EncodeContent supports a single Mode property that can be set to Encode or Decode.

...

Component Class

org.apache.nifi.processors.standard.InvokeHTTP

Bundle Grouporg.apache.nifi
Bundle Artifactnifi-standard-nar

Migration

GetHTTP supports a number of configurable properties to retrieve data using the HTTP GET method. The URL property controls the primary behavior of the Processor.

...

Component Class

org.apache.nifi.jms.processors.ConsumeJMS

Bundle Grouporg.apache.nifi
Bundle Artifactnifi-jms-processors-nar

Migration

GetJMSQueue supports retrieving messages using the Java Message Service Queue interface to access Apache ActiveMQ.

...

Component Class

org.apache.nifi.jms.processors.ConsumeJMS

Bundle Grouporg.apache.nifi
Bundle Artifactnifi-jms-processors-nar

Migration

GetJMSTopic supports retrieving messages using the Java Message Service Topic interface to access Apache ActiveMQ.

...

Component Class

org.apache.nifi.processors.twitter.ConsumeTwitter

Bundle Grouporg.apache.nifi
Bundle Artifactnifi-social-media-nar

Migration

GetTwitter uses Version 1 of the Twitter REST API and relies on the retired Twitter Hosebird Client library.

...

Component Class

org.apache.nifi.processors.standard.UpdateAttribute

Bundle Grouporg.apache.nifi
Bundle Artifactnifi-standard-nar

Migration

HashAttribute supports generating an MD5 digest of one more FlowFile attribute name and value pairs. The MD5 algorithm is not secure for cryptographic operations, and alternatives such as the SHA-2 or SHA-3 algorithms should be used.

...

Component Class

org.apache.nifi.processors.standard.CryptographicHashContent

Bundle Grouporg.apache.nifi
Bundle Artifactnifi-standard-nar

Migration

HashContent supports generating a digest of FlowFile content using a configurable algorithm and writing the hash to a specified FlowFile attribute.

...

Component Class

org.apache.nifi.processors.standard.InvokeHTTP

Bundle Grouporg.apache.nifi
Bundle Artifactnifi-standard-nar
Deprecation TypeComponent Properties
Deprecated Version1.18.0
Migration DifficultyLOW
Migration TypeProperty Replacement

Migration

InvokeHTTP includes several deprecated properties for configuring access through a proxy server.

...

Component Class

org.apache.nifi.processors.standard.InvokeHTTP

Bundle Grouporg.apache.nifi
Bundle Artifactnifi-standard-nar

Migration

PostHTTP supports sending FlowFile content to a configurable HTTP URL using the HTTP POST method.

...

Component Class

org.apache.nifi.jms.processors.PublishJMS

Bundle Grouporg.apache.nifi
Bundle Artifactnifi-jms-processors-nar

Migration

PutJMS supports sending messages using the Java Message Service interface to access Apache ActiveMQ.

...