409 Commits

Author SHA1 Message Date
Andy LoPresto
f65286be83
NIFI-5622 Updated test resource keystores and truststores with SubjectAlternativeNames to be compliant with RFC 6125.
Refactored some test code to be clearer.
Renamed some resources to be consistent across modules.
Changed passwords to meet new minimum length requirements.

This closes #3018
2018-10-04 09:50:09 -04:00
Mark Payne
030129c7ce NIFI-5618: Avoid NPE when viewing Provenance Event details on a disconnected node
Signed-off-by: Pierre Villard <pierre.villard.fr@gmail.com>

This closes #3027.
2018-09-25 12:28:58 +02:00
Koji Kawamura
f570cb980d
NIFI-375: Added operation policy
The operation policy allows that a user to operate components even if they does not have direct READ/WRITE
permission of the component.

Following operations are controlled by the new operate policy:
- Start/stop/enable/disable Processors, ControllerServices,
ReportingTasks, Input/OuputPorts
- Enable/disable transmission of RemoteInput/OutputPorts and
RemoteProcessGroups
- Terminate Processor threads

Refactored what API exposes

The previous commit let API exposes few fields in DTO. But we should
avoid returning partial DTO as it complicates authorization logic.

Instead, this commit adds StatusDTO for ReportingTaskEntity and
ControllerServiceEntity, so that it can be returned regardless of having
READ permission. Component DTO can only be returned with a READ
permission.

Refactor RPG same as ControllerService.

WIP incorporating review comments.

Incorporated review comments

- Cleaned up merger classes
- Recreate DTO instance at each function during two phase commmit

Restrict enabling ControllerService without read permission

Revert the last commit.

Fix review comments.

- Renamed confusing static method names and its parameters
- Removed unnecessary permission checks from UI condition

Fixed delete action display condition.

Fixed NPE at Summary.

Apply operation policy to activateControllerServices.

Removed OperationPermissible from ComponentEntity.

This closes #2990
2018-09-19 15:28:41 -04:00
Mark Payne
4cca9bef7c NIFI-5480: Use FlowController's maps of components in order to look up component by ID rather than iterating recursively through all Process Groups to find the component
This closes #2932

Signed-off-by: Jeremy Dyer <jeremydyer@apache.org>
2018-08-01 19:33:56 -04:00
Andy LoPresto
e62aa0252d
NIFI-5442 Get X-ProxyContextPath value from request attributes rather than directly from headers.
NIFI-5442 Populate request contextPath attribute during AccessResource before displaying on message-page.jsp.
Refactored shared code from CatchAllFilter to WebUtils.
NIFI-5442 Refactored filter and context path code to shared parent filter and subclass.
NIFI-5442 Removed unnecessary initParams from nifi-web-ui web.xml.
NIFI-5442 Added explicit dispatchers to nifi-web-ui web.xml and removed unnecessary code from AccessResource.

This closes #2908
2018-08-01 12:10:14 -04:00
Damian Czaja
ec7f131602
NIFI-4889: Logout not working properly with OIDC
- Redirect user agent to end session endpoint on the OIDC provider
- This closes #2830
2018-07-16 10:14:31 -04:00
Mark Payne
35bfc93901
NIFI-5377: Addressed issue of infinite recursion when enabling/disabling controller services if there is a recursive loop (i.e., Service A references Service B references Service A). This closes #2847
Signed-off-by: Matt Gilman <matt.c.gilman@gmail.com>
2018-07-10 09:57:13 -04:00
Mark Bean
0d07bc4951
NIFI-5377 prevent infinite loop if a controller service circular reference exists 2018-07-10 09:57:13 -04:00
thenatog
b77d66889a
NIFI-5374 - Added ExceptionFilter which catches RequestRejectedException thrown in the nifi-api Jersey code. These exceptions were not caught by the Jetty error-page configuration because they're thrown before the endpoint/Jetty routing is hit.
Added integration test for checking the ExceptionFilter catches malicious string exceptions.
Made minor changes to PR 2840 for code style.

This closes #2840.

Co-authored-by: Andy LoPresto <alopresto@apache.org>

Signed-off-by: Andy LoPresto <alopresto@apache.org>
2018-07-03 18:17:22 -07:00
Andy LoPresto
d42a1e8bf4
NIFI-5323-RC1 prepare for next development iteration 2018-06-19 20:02:21 -07:00
Andy LoPresto
99bcd1f88d
NIFI-5323-RC1 prepare release nifi-1.7.0-RC1 2018-06-19 20:02:01 -07:00
Mark Payne
d0499eb867
NIFI-5311: When creating a processor, controller service, or reporting task, give the component up to 50 ms to complete validation before returning the DTO. This closes #2795 2018-06-14 13:24:27 -04:00
Matt Gilman
fe31a06fdc
NIFI-4907:
- Minor adjustments following PR.
- Avoiding additional find operation when authorizing components when populating component details.
- Requiring access to provenance events when downloading content or submitting a replay as they may provide events details.
- Updating the REST API docs detailing the required permissions.
- Updating the wording in the documentation regarding the provenance and data policies.
- Removed the event attributes from the authorization calls that were verifying access to provenance events.
- Only checking content availability when the user is authorized for the components data.
- Addressing typo in JavaDoc.

This closes #2703
2018-06-14 12:21:47 -04:00
Mark Bean
e27798797a
NIFI-4907: add 'view provenance' component policy
whitespace removed for checkstyle
2018-06-14 10:59:17 -04:00
Matt Gilman
8feac9ae54
NIFI-5237:
- Ensuring the proxy headers are considered when redirecting the user following a OIDC or Knox login exchange.

This closes #2763.

Signed-off-by: Bryan Bende <bbende@apache.org>
2018-06-12 12:50:37 -04:00
Mark Payne
729f8aa246
NIFI-5279: Allow components up to 50 milliseconds to complete validation before returning from update request
This closes #2770.

Signed-off-by: Andy LoPresto <alopresto@apache.org>
2018-06-07 16:32:19 -07:00
Matt Gilman
c3af53ce65 NIFI-5263 - Fixing the advice auditing the method for updating controller service referencing components.
Signed-off-by: Pierre Villard <pierre.villard.fr@gmail.com>

This closes #2756.
2018-06-06 10:03:42 +02:00
Matt Gilman
05a1d63090 NIFI-5208:
- Fixing missing message when a node is disconnected from a cluster.
- Updating endpoints to accept a flag to allow for changes to be made to a disconnected node.
- Updating custom UIs to acknowledge disconnected nodes prior to performing modifications.
2018-05-30 13:41:03 -04:00
Mark Payne
eb0b4283e8 NIFI-5222: Prevent validating components multiple times for each update
- Avoid triggering async validation for each update to component when instantiating a template (such as copy/paste or templates). Added debug logging to indicate when and why we are triggering validation; removed unit test that made poor assumptions about the inner workings of the FlowSynchronizer that resulted in failures when we make calls into processors that the unit test doesn't know about"

This closes #2731.
2018-05-25 13:44:15 -04:00
zenfenan
0973c2d8d1 NIFI-543 Added annotation to restrict processor to run only on the primary node
- PR Fix - 'Execution' dropdown will now be shown in all cases
- Annotated ListGCSBucket with PrimaryNodeOnly

This closes #2509.

Signed-off-by: Mark Payne <markap14@hotmail.com>
2018-05-25 11:50:29 -04:00
Matt Gilman
18ec386150 NIFI-5066:
- Ensuring we verify we can enable/disable when appropriate.
2018-05-25 11:22:21 -04:00
Mark Payne
604656fe88
NIFI-950: Make component validation asynchronous
NIFI-950: Still seeing some slow response times when instantiating a large template in cluster mode so making some minor tweaks based on the results of CPU profiling
NIFI-5112: Refactored FlowSerializer so that it creates the desired intermediate data model that can be serialized, separate from serializing. This allows us to hold the FlowController's Read Lock only while creating the data model, not while actually serializing the data. Configured Jersey Client in ThreadPoolRequestReplicator not to look for features using the Service Loader for every request. Updated Template object to hold a DOM Node that represents the template contents instead of having to serialize the DTO, then parse the serialized form as a DOM object each time that it needs to be serialized.
NIFI-5112: Change ThreadPoolRequestReplicator to use OkHttp client instead of Jersey Client
NIFI-5111: Ensure that if a node is no longer cluster coordinator, that it clears any stale heartbeats.
NIFI-5110: Notify StandardProcessScheduler when a component is removed so that it will clean up any resource related to component lifecycle.
NIFI-950: Avoid gathering the Status objects for entire flow when we don't need them; removed unnecessary code
NIFI-950: Bug fixes
NIFI-950: Bug fix; added validation status to ProcessorDTO, ControllerServiceDTO, ReportingTaskDTO; updated DebugFlow to allow for pause time to be set in the customValidate method for testing functionality
NIFI-950: Addressing test failures
NIFI-950: Bug fixes
NIFI-950: Addressing review feedback
NIFI-950: Fixed validation logic in mock framework
This closes #2693
2018-05-16 14:39:23 -04:00
Matt Gilman
af2513adf8 NIFI-1295:
- Adding UI controls for terminating hung threads.
- Showing current number of terminated threads.
- Fixing issue when replicating terminate threads request throughout the cluster.

This closes #2607.

Signed-off-by: Mark Payne <markap14@hotmail.com>
2018-04-25 16:23:34 -04:00
Matt Gilman
6938e58c81 NIFI-5066:
- Allowing the enable/disable buttons to be active under the same conditions as the start/stop buttons.

This closes #2633.

Signed-off-by: Mark Payne <markap14@hotmail.com>
2018-04-25 14:58:29 -04:00
Pierre Villard
2799211946 NIFI-5099 - Update flow differences when updating a connection
This closes #2649

Signed-off-by: Mike Thomsen <mikerthomsen@gmail.com>
2018-04-23 07:08:00 -04:00
Matt Gilman
b7272e3f32 NIFI-4997:
- Fixing process group audit advice.
- Setting spring security user in background threads.
- Removing unnecessary overloaded methods.

This closes #2626.

Signed-off-by: Mark Payne <markap14@hotmail.com>
2018-04-11 16:18:36 -04:00
joewitt
59f625d3c2 Merge branch 'NIFI-4995-RC3' as part of NiFi 1.6.0 release process 2018-04-06 16:48:08 -07:00
Mark Payne
644133dc35 NIFI-4149: Minor tweaks to verbiage
This closes #2205.
2018-04-06 12:42:38 -04:00
Pierre Villard
4c787799ff NIFI-4149 - Indicate if EL is evaluated against FFs or not
- take into account input requirement for documentation rendering
- Renamed variable registry scope and added comments
- Doc + change in mock framework to check scope + update of components + UI
2018-04-06 12:40:54 -04:00
Mike Moser
dc9b4cb516
NIFI-3599 Allow back pressure object count and data size to be configurable in nifi.properties. This closes #2497 2018-04-05 13:50:16 -04:00
Koji Kawamura
1913b1e2a8
NIFI-4932: Enable S2S work behind a Reverse Proxy
Adding S2S endpoint Reverse Proxy mapping capability.
Added license header to SVG files.
Incorporated review comments.
Use regex to check property key processing.
Catch AttributeExpressionLanguageParsingException.
This closes #2510
2018-04-03 15:40:28 -04:00
joewitt
d511fe3e4b NIFI-4995-RC3 prepare for next development iteration 2018-04-03 08:28:34 -07:00
joewitt
f8466cb16d NIFI-4995-RC3 prepare release nifi-1.6.0-RC3 2018-04-03 08:28:15 -07:00
Matt Gilman
364985fb41 NIFI-5034:
- Processing properties and property descriptors in Controller Service referencing components unconditionally.

This closes #2602.

Signed-off-by: Mark Payne <markap14@hotmail.com>
2018-04-03 10:34:33 -04:00
Matt Gilman
924c935a38 NIFI-5034:
- Ensuring descriptors and properties of referencing components are populated like Processors, Reporting Tasks, etc.
2018-04-03 10:34:33 -04:00
Matt Gilman
bbe79d2260 NIFI-5033:
- Ensuring appropriate response in checkAuthorization when user is null.
- Ensuring the user reference is passed down when applying variable changes.

This closes #2598.

Signed-off-by: Mark Payne <markap14@hotmail.com>
2018-04-02 10:35:04 -04:00
Mark Payne
f394c874e1
NIFI-4895: Added backend code to give users the ability to forcibly terminate a processor if the processor does not complete after clicking Stop
NIFI-4895: Addressed review feedback; addressed checkstyle issues
This closes #2555
2018-03-28 12:02:47 -04:00
Matt Gilman
69a564e4c8
NIFI-5009:
- Fixing required permission for PutParquet.

NIFI-5008:
- Ensuring all restricted components are tagged as such.

This closes #2583.

Signed-off-by: Bryan Bende <bbende@apache.org>
2018-03-26 09:47:54 -04:00
Matt Gilman
98cd9ad531
NIFI-4885:
- Updating the versioning endpoints to account for the granular access restrictions.

This closes #2573.

Signed-off-by: Bryan Bende <bbende@apache.org>
2018-03-21 11:45:13 -04:00
Matt Gilman
a1c917656e NIFI-4973:
- Fixing RPG port merging.
- Adding unit tests.
- Removing unecessary sorting that wasn't maintained while clustered.

This closes #2551.

Signed-off-by: Mark Payne <markap14@hotmail.com>
2018-03-16 13:03:09 -04:00
Mark Payne
7d5f803ce6 Fixed checkstyle violation 2018-03-15 16:16:12 -04:00
Mark Payne
844da06344
NIFI-4849: Implemented REST Endpoint and associated backend code to generate a Diagnostics Report for a Processor
Implemented review feedback. Refactored data model to make the API cleaner and delineate more along the lines of what permissions are required in order to see which details
Implementing review feedback
Removed sensitive information from the diagnostics reports
Fixed bug in merging logic for GCDiagnosticsSnapshots
This closes #2468
2018-03-15 15:10:41 -04:00
joewitt
d78d95ad6f NIFI-4885 fixing checkstyle issue 2018-03-12 22:22:59 -04:00
Matt Gilman
b1217f529b NIFI-4885:
- Introducing more granular restricted component access policies.

This closes #2515.

Signed-off-by: Mark Payne <markap14@hotmail.com>
2018-03-12 14:19:42 -04:00
Kevin Doran
79fa4ad46f
NIFI-4835 Corrects Swagger spec response types in FlowResource 2018-03-08 14:30:31 -05:00
Takanobu Asanuma
bfecf0f06c
NIFI-4855:
- Fix the layout of NiFi API document
- update the sub-title to be more detailed
- This closes #2503
2018-03-06 10:30:18 -05:00
Matt Gilman
160bea8bf3
NIFI-4538:
- Fixing broken unit test.
2018-02-20 17:14:49 -05:00
yuri1969
91e98aa50b
NIFI-4538 - Add Process Group information to...
...Search results

* Separated the search functionality.
* Added a unit test.
* Added the PG info to UI (a mere draft).
* Introduce the nearest versioned group
* Removed the top level group results in favour of the nearest versioned group.
* This closes #2364
2018-02-20 12:42:09 -05:00
Mark Payne
61c6f0305b
NIFI-4863: Bug fixes to the way that we handled Remote Group Ports when changing flow version / reverting local changes
- Everywhere that we ignore adding remote ports we should ignore removing remote ports as well in flow diffs

This closes #2462.

Signed-off-by: Bryan Bende <bbende@apache.org>
2018-02-09 15:45:54 -05:00
Bryan Bende
34b678d30d NIFI-4841 Fixing NPE when reverting local changes involving remote group ports. This closes #2454.
Signed-off-by: Mark Payne <markap14@hotmail.com>
2018-02-09 10:26:19 -05:00