[ 
https://issues.apache.org/jira/browse/NIFI-8638?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17362306#comment-17362306
 ] 

Jul Tomten commented on NIFI-8638:
----------------------------------

Dear Mark,

 

I agree that it should at least show the "Go To" arrow instead of the "Convert 
to Parameter" arrow.

In the processor it would be nice to see the #\{mypassword} or which parameter 
it's refering.

 

 

 


I saw in some other thread that there is a discussion about how to handle the 
sensitive parameters and what they protect.

I think there should be a policy allowing to view the sensitive properties and 
the reason for that is troubleshooting. If you use the InvokeHHttp processor 
and get a http 401 you want to check the password. A 401 may be casused by 
wrong password, missing user account, locked user account, expired useraccount 
and many more.

 

We use keepass [https://keepass.info/] for storing sensitive passwords. Next to 
the password field there is a button with three dots "show/hide password using 
asterisk". By default passwords are displayed with asterisks and clicking the 
button displays the password in clear text. In NiFi a similar feture with a 
button "display sensitve" next to the sensisitve property would makse sense but 
only users with policy "display sensitve" may use the button.

policy "display sensitve" must be on levels global, process group, process 
context, individual processor

 

Today you can with a little effort get hold of the sensitive properties anyway. 
Only do this if you know what you are doing it may be a security risk.

Build two flows in NiFi.

 

flow 1

InvokeHttp processor that call flow2 using basic authentication.

 

flow 2

HandleHttpRequest processor - "Paramters to Attributes List" Authorization
ReplaceText processor - "Replacement Value" 
password=$\{http.headers.Authorization:substringAfter(' 
'):base64Decode():substringAfter(':')

Always Replace, Entire text, All

Before the space ' 'is the baisc auth header, before the colon ':' is the 
username



After execution - the password is in the flowfile payload and can be seen in 
the provenance viewer.

 

I'm new to NiFi so maybe I missed something.

 

> Sensitive Properties referencing Parameters should show that in UI
> ------------------------------------------------------------------
>
>                 Key: NIFI-8638
>                 URL: https://issues.apache.org/jira/browse/NIFI-8638
>             Project: Apache NiFi
>          Issue Type: Bug
>          Components: Extensions
>    Affects Versions: 1.13.2
>         Environment: Linux RedHat
> java 11 sapmachine-jdk-11.0.10_linux-x64_bin.tar.gz
>            Reporter: Jul Tomten
>            Priority: Major
>              Labels: context, property, sensitive
>   Original Estimate: 8h
>  Remaining Estimate: 8h
>
> An issue with passowords for the  getJMS and InvokeHTTP processors - I want 
> to store the passwords in the "context properties" and reference from the 
> processor but it doesn't work.  I'm on NiFi 1.13.2. I enter for
> example #\{mypassword}
> in the password value field in the processor BasicAuthenticationUsername and 
> it works setting that but after activating and reopening the value field 
> reads "sensitive value set" and the little arrow to the right is pointing up 
> (arrow indicating parameter is not yet stored in context).  Expected is that 
> the arrow point to the right (indicating that the value is fetched from the 
> context). The password in the context properties isn't used when testing and 
> login fails.
> To make it run it is necessary to set the password in the processor instead 
> fo referencing with #\{mypassword}.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to