1256 Commits

Author SHA1 Message Date
Mark Payne
d390a0becf
NIFI-10673: When a component is added to a ProcessGroup, we had a method called ensureUniqueVersionControlId but the method only took into accounts in that Process Group. Updated methods to now consider components in any Process Group that is part of the same Versioned Flow. Also added system test to verify the problem and the fix. Added Toolkit clients and additional methods as necessary in order to implement system tests
NIFI-10673: Addresed checkstyle issue

NIFI-10673: Removed TODO comment
Signed-off-by: Matthew Burgess <mattyb149@apache.org>
2022-10-26 14:38:01 -04:00
Denes Arvay
3ed87a2982
NIFI-10594 Render empty lines in Labels
This closes #6519

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2022-10-25 09:39:29 -05:00
mtien
643b6a6c1d
NIFI-10689 Fixed Parameter Provider Name encoding in context dialog
This closes #6576

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2022-10-25 09:16:36 -05:00
Timea Barna
7c33516aee NIFI-9437 Flowfile Expiration cannot exceed 24 days
NIFI-9437 Addressing review comments, correcting setter in StatelessFlowQueue class

Signed-off-by: Nathan Gough <thenatog@gmail.com>

This closes #6558.
2022-10-24 14:46:56 -04:00
Malthe Borch
831a11d0b5
NIFI-7823 Added groups mapping from OIDC token claim
This closes #6454

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2022-10-24 09:12:24 -05:00
Joe Witt
c155d29658
NIFI-10614 Upgraded Bouncy Castle from 1.70 to 1.71
- Blocked Bouncy Castle jdk15on dependencies
- Forced jdk18on dependencies and validated across entire build

This closes #6498

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2022-10-20 19:35:02 -05:00
exceptionfactory
0dc02e26d2 NIFI-10648 Upgraded Apache Commons Text to 1.10.0
- Added org.apache.commons.text.version property in root Maven configuration
- Removed direct version references in favor of managed dependency version

Signed-off-by: Nathan Gough <thenatog@gmail.com>

This closes #6531.
2022-10-14 14:07:23 -04:00
Joe Witt
c6a9d70814
Merge branch 'NIFI-10521-RC4' 2022-10-06 14:13:30 -07:00
Andrew Lim
d29f67465a
NIFI-10564 Update text for access the controller access policy in UI and Admin Guide
Signed-off-by: Joe Gresock <jgresock@gmail.com>

This closes #6476.
2022-10-03 20:50:31 -04:00
exceptionfactory
7a01e22125
NIFI-10577 Fix Sensitive Checkbox rendering for Fetch Parameters (#6473)
* NIFI-10577 Fixed Sensitive Checkbox rendering for Fetch Parameters

- Corrected rendering of Sensitive status checkbox on Firefox using standard nf-checkbox

* NIFI-10577 Corrected canvas rendering in Safari

Merged #6473 in main.
2022-10-03 13:24:36 -07:00
Joe Witt
c9ebdd2025
NIFI-10521-RC4 prepare for next development iteration 2022-10-03 10:59:36 -07:00
Joe Witt
109e54cd58
NIFI-10521-RC4 prepare release nifi-1.18.0-RC4 2022-10-03 10:59:34 -07:00
M Tien
5546b7ab01
NIFI-10566: update availability text in Controller Settings (#6463)
* NIFI-10566: update availability text in Controller Settings
- fix link in controller service referencing a parameter provider

* add Registry Clients to the availability message

This closes #6463
2022-10-03 08:23:52 -04:00
M Tien
34084d083a
NIFI-10542: set sensitivity for new parameters in a synced parameter context (#6446)
* NIFI-10542: set sensitivity for new parameters in a synced parameter context

* show removed or missing but referenced parameters with tooltip in the selectable parameters table
- remove default parameter value

* address review feedback
- fix showing a referencing icon for a missing but removed parameter

* fix discovering new parameters

This closes #6446
2022-09-26 19:32:00 -04:00
Shane Ardell
17084a1f09
NIFI-10538: UI updates for making RegistryClient an extension point (#6437)
* init commit

* remove test string

* display only class name for types combo

* remove commented code

* add UI support for dynamic properties

* add support for controller services

* address review feedback:

* fix syntax error
* remove console logs
* move contents of editRegistry into callback
* add name and description fields back to edit dialog

* add referencing component logic for registry clients

* implement reload logic

* more review findings
* increase size of description textarea in config
* remove location column from registry table
* remove commented out code

* post-rebase tweaks
* change if condition from assignment to evaluation
* add missing semicolons
* refactor new registry initialization into function

* more feedback addressed
* fix rebase error around controller service reference
* render registry references in their own list
* remove duplicate updateValidationError function
* remove TODO comment

* expose reload through nfSettings public variable

* show add registry dialog only after available types returns

* fix css class name

This closes #6437
2022-09-26 16:03:51 -04:00
simonbence
94fdc794b0
NIFI-10497 Making RegistryClient an extension point (#6433)
- NIFI-10497 Mae FlowRegistryClient an extension point
2022-09-26 12:16:21 -04:00
M Tien
d82ce18f88
NIFI-9514 NIFI-9515: Add UI support for Parameter Providers in Controller Services (#5671)
* NIFI-9514 - Add UI support for Parameter Providers in Controller Services

* - Fix a dialog closing issue

* - Hide fetch parameters button if there are config errors

* - Update Fetch Parameters dialog with new UX
- Implement checkbox logic for Selectable Parameters table

* - add createNewParameterContext property to track if group will be created as a new parameter context
- update fetch parameters dialog views for editing and after applying changes
- show affected referencing components after applying changes
- disable apply button if no parameter contexts will be updated
- refactor showing and hiding fetched parameters and selectable parameters tables logic
- add tooltip for parameter context icon

* - update parameter contexts view for provided contexts

* - add affected referencing components after applying fetched parameters
- add referencing parameter contexts to the provider settings tab
- update checkbox style in the selectable parameters table
- fix updating the referencing components border
- fix lint errors

* - fix selectable parameters table checkbox styles

* - fix hasParameterContextChanged checks
- checkbox style tweaks

* - add status bar to fetch parameters dialog

* - more style tweaks and remove unnecessary code

* - fix the selectable parameters table not saving and loading correctly

* - add tooltips
- fix styles

* - link from the parameter context to the associated parameter provider

* 9514: support navigating to the controller service created in parameter providers

* fix bulletins format in status bar

* address review feedback
- manage permissions for parameter providers
- disable/enable Fetch Parameters dialog Apply button

* manage authorizations to access parameter providers and parameter contexts

* fix lint errors

* fix and refactor hasGroupsChanged to determine the Apply button state

* new parameter context name input cannot be empty in Fetch Parameters dialog

* address review feedback

* fix duplicate code

* more fixes

* update fetch parameters checkbox states

* replace slickgrid checkbox selection plugin with custom implementation for different selection types
- check for affected parameters using the parameter status

* fixed showing the correct referencing components when switching groups

* fixed selectable parameters table shifting contents on row selection

* leverage slickgrid onClick to set user-selected parameter sensitivities in the selectable parameters table

* fix statusbar bulletins in processor details
- fix updating borders for referencing components
- update referencing parameter icon
- update table title in fetch parameters dialog

* address review feedback

* populate controller services referencing components of a referenced provider
- update controller services tab name

* showing parameter providers in CS controller service

* update tooltip messages in fetch parameters dialog
- fix dialog height to make room for the status bar

* reload the parameter providers table after a referenced parameter provider change in controller services
- fix conditions for enabling/disabling fetch parameters dialog Apply button
- add affected components no permissions message in the dialog

* fix always reloading the parameter providers table
- fix disableApplyButton checks
- add dialog message for a missing new parameter context name

* remove extra reload

* more fixes for disableApplyButton
- fixed styles for dialog message

* add a check in disableApplyButton for changed parameter values that are not referenced
- add changed value icon for parameters that are not referenced
- fix border on the referencing affected components container

* removed unnused plugins

This closes #5671
2022-09-24 08:43:27 -04:00
Joe Gresock
ece83709f4
NIFI-10473: Removing referencing components check on param provider f… (#6388)
* NIFI-10473: Removing referencing components check on param provider fetch

* NIFI-10473: Adding parameter status DTO to ParameterProviderDTO

* Allowing parameterStatus to be populated even when no parameters were updated

* Adding ParameterStatus enum for parameter fetching

* Adding MISSING_BUT_REFERENCED ParameterStatus

This closes #6388
2022-09-23 13:44:52 -04:00
exceptionfactory
6398c2deb7
NIFI-10505 Removed unused HttpClient dependency from nifi-web-api
- Removing org.apache.httpcomponents:httpclient from nifi-web-api avoids Linkage Errors with Sensitive Property Providers

Signed-off-by: Pierre Villard <pierre.villard.fr@gmail.com>

This closes #6423.
2022-09-16 10:19:28 +02:00
Joe Gresock
de7793e69b
NIFI-9003 Added framework support for Parameter Providers
- Added Environment Variable and File Parameter Provider implementations
- Added Parameter Provider commands to CLI
- Added component search handling for Parameter Providers
- Added documentation for integrating Parameter Providers

This closes #5369

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2022-09-09 13:04:56 -05:00
Mark Payne
a0c705715b
NIFI-10429: Added the ability to Replay latest provenance event for a given Processor.
This closes #6359

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2022-09-08 15:55:26 -05:00
exceptionfactory
b777978293 NIFI-10313 Removed Expiration Token on Authentication Errors
- Updated standard user interface error handler to clear the Access-Token-Expiration item from Session Storage when receiving an error with the WWW-Authenticate Header indicating a problem with the Bearer Token

Signed-off-by: Nathan Gough <thenatog@gmail.com>

This closes #6334.
2022-08-25 13:12:01 -04:00
exceptionfactory
777238eb32 NIFI-10321 Send Session Expired message for Expired JWT errors
Signed-off-by: Nathan Gough <thenatog@gmail.com>

This closes #6332.
2022-08-24 12:40:04 -04:00
exceptionfactory
0a065538e2 NIFI-10368 Upgraded jQuery UI from 1.12.1 to 1.13.2
Signed-off-by: Nathan Gough <thenatog@gmail.com>

This closes #6312.
2022-08-22 14:14:15 -04:00
Hsin-Ying Lee
2685856c62
NIFI-10052 Avoid obtaining any locks when creating/sending heartbeats (#6298) 2022-08-17 14:05:55 -04:00
Mark Payne
21503f6353
NIFI-10362: When asynchronous node disconnect is issued, do not send disconnect to node if the node becomes reconnected in the interim. Also, addressed the issue in which a disconnected node acts on a replicated request during the first phase by detect that it's the first phase if configured for cluster, not when only when connected to a cluster.
This closes #6308

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2022-08-17 11:09:47 -05:00
Malthe Borch
1b4d66a726
NIFI-10343 Add error code to exception message
The error object may not have a description, but should have a code.

Signed-off-by: Pierre Villard <pierre.villard.fr@gmail.com>

This closes #6288.
2022-08-16 09:49:58 +02:00
exceptionfactory
77033ec11a NIFI-10322 Corrected Cookie path when removing Bearer Token
- Appended root path to Cookie path attribute when removing Bearer Tokens as part of unauthorized response handling
- Updated Saml2AuthenticationSuccessHandler to follow standard Cookie path building strategy

Signed-off-by: Nathan Gough <thenatog@gmail.com>

This closes #6278.
2022-08-09 16:09:41 -04:00
Joe Witt
8c66bf948c
NIFI-10272-RC2 prepare for next development iteration 2022-07-27 13:24:09 -07:00
Joe Witt
8d256784d8
NIFI-10272-RC2 prepare release nifi-1.17.0-RC2 2022-07-27 13:24:06 -07:00
exceptionfactory
9bb22fcb11
NIFI-10284 Corrected HTTP Request Authenticated User logging
- Moved RequestAuthenticationFilter before HeaderWriterFilter

This closes #6250
Signed-off-by: Paul Grey <greyp@apache.org>
2022-07-27 10:26:43 -04:00
exceptionfactory
a661b035e8 NIFI-10259 Improved HTTP error handling for authentication failures
- Added Standard AuthenticationEntryPoint
- Configured AuthenticationEntryPoint for SecurityFilterChain and BearerTokenAuthenticationFilter

Signed-off-by: Nathan Gough <thenatog@gmail.com>

This closes #6233.
2022-07-22 17:33:51 -04:00
Mark Payne
d7ed66032e
NIFI-10050: When copying a process group and 1 CS references a higher-level CS, ensure that we don't drop that reference
This closes #6077

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2022-07-22 16:25:58 -05:00
Paul Grey
148834e71b
NIFI-10247 Corrected REST API documentation for empty-all-connection-requests
This closes #6220

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2022-07-19 07:51:32 -05:00
exceptionfactory
047b3611bf NIFI-10233 Corrected Anonymous Authentication for HTTP Access
- Enabled Standard Anonymous Authentication Filter when unencrypted HTTP is enabled

Signed-off-by: Nathan Gough <thenatog@gmail.com>

This closes #6209.
2022-07-14 23:27:54 -04:00
exceptionfactory
a9b5bebb15 NIFI-10216 Refactored NiFi Web API Security Configuration
- Removed extension of deprecated WebSecurityConfigurerAdapter
- Moved Filter bean configuration associated configuration classes
- Set default Spring Security log level to INFO
- Adjusted CSRF Token Repository to leverage simplified RequestUriBuilder for retrieving allowed context paths

Signed-off-by: Nathan Gough <thenatog@gmail.com>

This closes #6195
2022-07-13 19:11:03 -04:00
timeabarna
d5b626f0e4
NIFI-10108 Processor scheduling via parameter (#6115)
- NIFI-10108 Processor scheduling via parameter
- Refactoring component referencing check in AbstractComponentNode and StandardParameterReferenceManager classes.
2022-06-30 10:11:13 -04:00
exceptionfactory
0de83292de NIFI-9849 Refactored SAML Support with Spring Security 5
- Updated SAML Authentication Configuration with Spring Security SAML 2 components
- Updated Administration Guide with REST Resources
- Replaced SAMLAccessResource methods with applicable Spring Security Filters
- Removed IDP Credential Service and supporting components
- Removed message.logging.enabled, metadata.signing.enabled, and signature.digest.algorithm properties
- Added Access Token Expiration resource method
- Removed Saml2AccessResource and replaced with Access Token Expiration to avoid unnecessary conflicts with SAML login consumer
- Corrected Resource URI handling to support proxy server access

Signed-off-by: Nathan Gough <thenatog@gmail.com>

This closes #6149.
2022-06-28 13:57:35 -04:00
Nissim Shiman
db11961026
NIFI-9440 Allow Controller Services to have configurable Bulletins
Signed-off-by: Matthew Burgess <mattyb149@apache.org>

This closes #6035
2022-06-28 10:44:45 -04:00
Mark Payne
1442dcef23
NIFI-10111: Added option to unpack NARs into an Uber Jar and updated stateless nifi to always use this.
Signed-off-by: Matthew Burgess <mattyb149@apache.org>

This closes #6117
2022-06-24 13:12:14 -04:00
Matthew Burgess
d89f98f5b4
NIFI-9666 Implemented MiNiFi C2 client and refactored bootstrap
- Implemented MiNiFi C2 client using OkHttp
- Refactored MiNiFi bootstrap command handling and socket communication
- Added C2 Client Service to nifi-framework-core

This closes #6075

Co-authored-by: Matthew Burgess <mattyb149@apache.org>
Co-authored-by: Csaba Bejan <bejan.csaba@gmail.com>
Co-authored-by: Ferenc Erdei <ferdei@cloudera.com>

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2022-06-17 09:23:52 -05:00
exceptionfactory
bd45eb4995 NIFI-10100 Upgraded Jersey to 2.35
- Replaced individual version references with Jersey BOM dependency

Signed-off-by: Nathan Gough <thenatog@gmail.com>

This closes #6106.
2022-06-16 23:09:22 -04:00
Emilio Setiadarma
2161d0fe9c
NIFI-10104 Refactored usage of PropertyEncryptor
This closes #6119

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2022-06-16 16:38:34 -05:00
exceptionfactory
4b655ecb68
NIFI-9804 Added HTTP/2 support to Application Server
- Added nifi.web.https.application.protocols property
- Set default protocol to HTTP/1.1 and provided documentation for enabling HTTP/2
- Changed StandardALPNProcessor handshakeFailed log to debug

Signed-off-by: Joe Gresock <jgresock@gmail.com>
This closes #6093.
2022-06-03 11:54:21 -04:00
exceptionfactory
83316736f8
NIFI-9959 Add UI Support for Sensitive Dynamic Properties (#6073)
* NIFI-9959 Added UI Support for Sensitive Dynamic Properties

- Added SupportsSensitiveDynamicProperties to DBCPConnectionPool and ScriptedReportingTask

* NIFI-9959 Added sensitive parameter argument for Controller Service descriptors

* NIFI-9959 Adjusted sensitive property descriptor handling to support changing status

* NIFI-9959 Added info icon for Sensitive Value field

* NIFI-9959 Corrected handling of descriptor for existing dynamic properties

* NIFI-9959 Cleaning up dialog markup.

Co-authored-by: Matt Gilman <matt.c.gilman@gmail.com>

This closes #6073
2022-05-25 21:36:31 -04:00
exceptionfactory
99be62be67
NIFI-9958 Add Framework Support for Sensitive Dynamic Properties (#6057)
* NIFI-9958 Implemented Sensitive Dynamic Properties

- Added SupportsSensitiveDynamicProperties annotation for components
- Added optional sensitive query parameter to Property Descriptor REST Resource methods
- Added system tests for components supporting sensitive dynamic properties
- Updated REST Resources to support Sensitive Dynamic Property Names
- Updated Documentation Writer to indicate component support for Sensitive Dynamic Properties
- Updated InvokeHTTP to support Sensitive Dynamic Properties
- Updated Auditor components to handle masking Sensitive Dynamic Properties

* Refactored Property Descriptor REST method handling

- Corrected AbstractDocumentationWriter evaluation of support for sensitive dynamic properties
- Refactored Controller Service Dynamic Properties system tests to new class

* Updated AbstractComponentNode.getProperties() to get canonical descriptor
2022-05-23 17:20:54 -04:00
markap14
88e53eae8c
NIFI-10001: Fixed bugs that caused some components to not have their scheduled state updated. (#6049)
* NIFI-10001: Fixed issue in which some components may fail to update the scheduled state when comparing flows

* NIFI-10001: Fixed bugs that caused some components to not have their scheduled state updated. When comparing two flows, now allow specifying how to determine a VersionedComponent's ID for comparison. When comparing local flow against flow from registry, use Versioned Component ID. But when comparing two instantiated flows, such as local flow vs. cluster flow, use the VersionedComponent's Instance ID instead. This ensures that we can properly compare two components even if there are several instances of a given flow
2022-05-18 13:53:36 -04:00
tpalfy
2a8d07641e
NIFI-9895 Allow parameters to reference controller services (#5958)
* NIFI-9895 Allow parameter to reference controller service. Check read and write authorization for both previous and newly set controller service. Authorization done for both property or parameter change. Import/export handled by switching between instance id and versioned id.
2022-05-16 17:55:03 -04:00
markap14
8031b62351
NIFI-10001: When enabling a collection of Controller Services, change… (#6042)
* NIFI-10001: When enabling a collection of Controller Services, changed logic. Instead of enabling dependent services and waiting for them to complete enablement before starting a given service, just start the services given. The previous logic was necessary long ago because we couldn't enable a service unless all dependent services were fully enabled. But that changed a while ago. Now, we can enable a service when it's invalid. It'll just keep trying to enable until it becomes valid. At that point, it will complete its transition from ENABLING to ENABLED.

* NIFI-10001: Restored previous implementation for StandardControllerServiceProvider, as the changes were not ultimately what we needed. Changed StandardProcessGroup to use a ConcurrentHashMap for controller services instead of a HashMap with readLock. This was causing a deadlock when we enable a Controller Service that references another service during flow synchronization. Flow Synchronization was happening within a write lock and enabling the service required a read lock on the group. Eventually the thread holding the write lock would timeout and release the write lock. But this caused significant delays on startup. By changing to a ConcurrentHashMap, we alleviate the need for the Read Lock. Also noticed in testing that the StandardNiFiServiceFacade did not save flow changes when enabling dependent services so added call to controllerFacade.save().
2022-05-13 15:09:23 -04:00
Chris Sampson
313d70520d
NIFI-9470 This closes #6027. Allow creation of Parameter Context without any Inherited Parameter Contexts
Signed-off-by: Joe Witt <joewitt@apache.org>
2022-05-13 07:39:11 -07:00