You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@nifi.apache.org by "Kevin Doran (JIRA)" <ji...@apache.org> on 2018/08/09 16:06:00 UTC

[jira] [Created] (NIFI-5504) Improved Login Identity Provider Configurability

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)