You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@nifi.apache.org by "Kevin Doran (Jira)" <ji...@apache.org> on 2026/03/12 12:55:00 UTC
[jira] [Updated] (NIFI-15648) Resolve SECRET property values before fetchAllowableValues and verify in working flow context
[ https://issues.apache.org/jira/browse/NIFI-15648?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Kevin Doran updated NIFI-15648:
-------------------------------
Fix Version/s: 2.9.0
Resolution: Fixed
Status: Resolved (was: Patch Available)
> Resolve SECRET property values before fetchAllowableValues and verify in working flow context
> ---------------------------------------------------------------------------------------------
>
> Key: NIFI-15648
> URL: https://issues.apache.org/jira/browse/NIFI-15648
> Project: Apache NiFi
> Issue Type: Bug
> Reporter: Pierre Villard
> Assignee: Pierre Villard
> Priority: Major
> Fix For: 2.9.0
>
> Time Spent: 20m
> Remaining Estimate: 0h
>
> When a connector calls {*}fetchAllowableValues{*}, the working flow context's *ConnectorConfigurationContext* may return *null* for properties with {*}PropertyType.SECRET{*}. This occurs because at the time the working flow context is cloned and *setProperties* resolves secrets, the backing *ParameterProvider* may not yet be valid, causing *ParameterProviderSecretsManager.getSecretProviders()* to return an empty set. The secret resolution silently stores {*}null{*}, and there is no subsequent re-resolution.
> This does not affect {*}verifyConfigurationStep{*}, which bypasses stored resolved values by accepting explicit *propertyValueOverrides* from the UI and creating a new context with *StringLiteralValue* entries.
> The fix adds *resolvePropertyValues()* calls in *StandardConnectorNode* before delegating to the connector's *fetchAllowableValues* (both overloads) and *verify* methods. This re-resolves *SecretReference* entries against the *SecretsManager* at the point of need, when the *ParameterProvider* is expected to be valid. This mirrors the existing pattern in {*}start(){*}, which already calls *resolvePropertyValues()* on the active flow context before starting the connector.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)