Created 05-12-2017 10:32 AM
Is there any way to create multiple NiFi flows (the blank canvas which appears on the start)?
For now, even if 2-3 users are logging in they all see the same NiFi flow. I want to create 2 NiFi flows so each user can see his own individual NiFi flow.
Created 05-12-2017 10:43 AM
Have each user put all of his/her flows in a processor group owned by that user. This high-level processor group can hold multiple flows by the user (including separate flows themselves organized by processor groups). The high-level processor group can be owned by the users so only user has permission to view and edit the contents.
This post is a good reference: https://community.hortonworks.com/questions/33007/what-is-the-best-way-to-organize-many-nifi-process...
Created 05-12-2017 10:43 AM
Have each user put all of his/her flows in a processor group owned by that user. This high-level processor group can hold multiple flows by the user (including separate flows themselves organized by processor groups). The high-level processor group can be owned by the users so only user has permission to view and edit the contents.
This post is a good reference: https://community.hortonworks.com/questions/33007/what-is-the-best-way-to-organize-many-nifi-process...
Created 05-12-2017 11:25 AM
But suppose there are 3 users and I created 3 different process groups for each of them. So when User 1 logs in he can see 3 process group but can edit and modify only 1 which belongs to him. But he still can see the rest of the two. I want to hide those 2 for him so he will see just his process group.
Created on 05-12-2017 12:12 PM - edited 08-17-2019 06:03 PM
User 2 cannot see the details or contents of process group of user 1, but can still see the presence of the process group, eg as per screenshot:
See: https://nifi.apache.org/docs/nifi-docs/html/administration-guide.html
"User2 is unable to add components to the dataflow or move, edit, or connect components. The details and properties of the root process group and processors are hidden from User2."
Created on 05-12-2017 12:13 PM - edited 08-17-2019 06:02 PM
If user 1 does not have view or modify to user 2 or user 3 process groups, all user 1 will see is a ghosted boxes for those processors, remote process groups, process groups, etc.
User 1 will not be able to view the configuration or FlowFiles that pass through these components either. He will not even be able to identify what kind of processor it is.
The only thing they can see are the stats. This is important since all dataflows run within the same JVM. So understanding where a backlog somewhere else in the flow exists can be important. I suggest creating a label that is viewable by all users fro each process group that provides a POC for that process group in the even their is an issue.
Another reason you would not want hide these components completely, is to avoid users stacking components on top of each other. Lets say user 2 can see both user 1 and user2 components, but user 1 can only see his components. User 1 now has no way of knowing where components exist making it very hard for user 2 to view the canvas since he would see all components potential layer on top of one another.
Perhaps I am missing something in your use case, but I don't see the benefit or vulnerability introduced by allowoing all users to see these ghosted components.
Thank you, Matt
Created 02-18-2018 04:47 PM
In my understanding, everything is based anyhow on "processGroup". and there is a "root" process group that is shared among all the users. It would be nice to allow the creation of multiple "root" process group and define for a user or a group of user what is the root "processGroup". Of course, super users or users belonging to different groups, should have the possibilty to see the list of root "processGroup" they can access and enter it.
what do you think? for real multi-tenancy this would be quite interesting.