Kevin Doran created NIFI-5504:
---------------------------------

             Summary: Improved Login Identity Provider Configurability
                 Key: NIFI-5504
                 URL: https://issues.apache.org/jira/browse/NIFI-5504
             Project: Apache NiFi
          Issue Type: New Feature
          Components: Security
    Affects Versions: 1.7.1, 1.7.0, 1.6.0, 1.5.0
            Reporter: Kevin Doran


Currently, in NiFi (and NiFi Registry), the client/user identity for any 
request to the REST API comes from a Spring Security filter chain during 
request processing that handles authentication and sets the current user for 
the request context.

The X509 identity extraction is always first in the chain, meaning that if a 
client certificate is present in the TLS handshake (even if not required), it 
will be used as the client identity. This can be problematic when multiple 
forms of authentication can desired (eg, certificate based for servers, 
username/password for end users)

This presents challenges for users that cannot easily change client 
certificates managed by their host OS, browser, proxy, or third-party 
authentication tool. Or when an end user simply accidentally selects a client 
certificate when prompted.

Today, if you want to force username/password login, you have to ensure that 
the client/browser does not pass certificate or SNEGO credentials so that you 
fall through to the login screen. It would make for easier deployments for 
administrators if they could configure the order of looking for credentials 
(for example, use a JWT if present, and if not present use a certificate 
identity if present).



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to