Created 02-07-2017 02:11 PM
Hello,
Just wondering if there is a way to help developers identify in which NiFi UI canvas they are on - Dev, Test, Prod; this is to help prevent developers from accidentally making changes in the wrong environments if they have multiple environments' canvases open; ideally a place like the top left corner where the NiFi logo is would be a good place to identify the environment; I checked the nifi properties file and other than the banner (which is a very small size font) I didn't find any other property where you can have a custom text/image/logo on the canvas. Also, I thought about the Label, but you've to add that inside each process group for it to be useful.
Any ideas on how this can be done?
Thanks.
Created on 02-07-2017 02:38 PM - edited 08-18-2019 04:30 AM
NiFi has an optional property in the nifi.properties file that allows you to place a banner at the top of your canvas:
nifi.ui.banner.text=
This banner remains visible no matter which process group the user is in.
You could configure a unique banner for each of your environments.
Thanks,
Matt
Created on 02-07-2017 02:38 PM - edited 08-18-2019 04:30 AM
NiFi has an optional property in the nifi.properties file that allows you to place a banner at the top of your canvas:
nifi.ui.banner.text=
This banner remains visible no matter which process group the user is in.
You could configure a unique banner for each of your environments.
Thanks,
Matt
Created 02-07-2017 02:58 PM
thanks @Matt
I was aware of the banner text, but we're actually using it for a Security Disclaimer; is it possible to display disclaimer text on the NiFi login screen before you get to the the canvas; if that's doable then we can use banner text for identifying the environment rather than the disclaimer.
Created 02-07-2017 03:06 PM
Unfortunately not, but I think that being able to customize the login screen with some user defined text is a cool idea. I suggest you create an Apache Jira for that enhancement idea.
https://issues.apache.org/jira/secure/Dashboard.jspa
The only other option is to create a unique label on the canvas of each of your environments. The drawback there is the banner is only visible within the process group it was created and if you template your entire flow, that template would be carried from cluster to cluster and the label would thus need to be updated.
Thanks,
Matt
Created 08-01-2017 09:55 AM
@Matt Clarke you can configure this property once per Nifi cluster? Is there a way to have different NiFi UIs/banners for dev/production without a multi-node Nifi setup? We plan to use the same Nifi node/environment for dev & production flows, is different process groups and labels the only way to go in this case?
Created 08-01-2017 03:08 PM
The banner is a NiFi core feature and is not tied in anyway to the dataflows you select or build on your canvas. You are correct that the best approach for identifying which dataflows on a single canvas are designated dev, test, or production is through the use of "labels".
In a secure NiFi setup, you can use NiFi granular multi-tenancy user authorization to control what components a user can interact with an view. If you use labels, you should set a policy allowing all user to view that specific component, so even if they are not authorized to access the labeled components, they will be able to see why via the label text.
Thanks,
Matt