What are Parameter Providers?

Parameter Providers is a new extension point that is added to the existing NiFi Parameter Context feature that can help to populate flow parameters on demand. Learn the features associated with Parameter Providers and how you can use them in your NiFi environment.

You can create Parameter Contexts from Parameters fetched from an external source. Using Parameter Providers allows automatic creation of Parameter Contexts from external sources, for example file-based Kubernetes secrets, environment variables, or HashiCorp Vault secrets engines.

Parameter Providers:

  • Provide a feature in the Controller Settings that enable you to generate Parameter Contexts from external sources.
  • Enable you to keep your provided Parameter Contexts up to date with the external source by running a Fetch Parameters operation.
  • Provide an extension point for developing new custom Parameter Providers that can be deployed in a NiFi Archive (NAR).
  • Provide a CLI command, nifi fetch-params, to fetch and apply parameters, allowing a scripted approach to keep Parameter Contexts up to date.

Parameter values are stored (encrypted, if sensitive) inside the flow. Parameter Providers are a mechanism that automate the creation of Parameter Contexts and facilitate keeping them updated. They do not replace the framework mechanism to resolve parameter values during Processor/Controller Service execution and they do not pull parameters directly from the external source at the time of usage in the flow.

For more information about Parameter Contexts, see Parameter Contexts in the Apache NiFi User Guide.