Lightweight Directory Access Protocol (LDAP)
Below is an example and description of configuring a Login Identity Provider that integrates with a Directory Server to authenticate users.
Set the following in nifi.properties to enable LDAP username/password authentication:
nifi.security.user.login.identity.provider=ldap-providerModify login-identity-providers.xml to enable the ldap-provider. Here is the sample provided in the file:
<provider>
    <identifier>ldap-provider</identifier>
    <class>org.apache.nifi.ldap.LdapProvider</class>
    <property name="Authentication Strategy">START_TLS</property>
    <property name="Manager DN"></property>
    <property name="Manager Password"></property>
    <property name="TLS - Keystore"></property>
    <property name="TLS - Keystore Password"></property>
    <property name="TLS - Keystore Type"></property>
    <property name="TLS - Truststore"></property>
    <property name="TLS - Truststore Password"></property>
    <property name="TLS - Truststore Type"></property>
    <property name="TLS - Client Auth"></property>
    <property name="TLS - Protocol"></property>
    <property name="TLS - Shutdown Gracefully"></property>
    <property name="Referral Strategy">FOLLOW</property>
    <property name="Connect Timeout">10 secs</property>
    <property name="Read Timeout">10 secs</property>
    <property name="Url"></property>
    <property name="User Search Base"></property>
    <property name="User Search Filter"></property>
    <property name="Identity Strategy">USE_DN</property>
    <property name="Authentication Expiration">12 hours</property>
</provider>The ldap-provider has the following properties:
| Property Name | Description | 
|---|---|
| 
                      | The duration of how long the user authentication is valid for. If the user never logs out, they will be required to log back in following this duration. | 
| 
                         | How the connection to the LDAP server is authenticated. Possible values are  | 
| 
                         | The DN of the manager that is used to bind to the LDAP server to search for users. | 
| 
                         | The password of the manager that is used to bind to the LDAP server to search for users. | 
| 
                         | Path to the Keystore that is used when connecting to LDAP using LDAPS or START_TLS. | 
| 
                         | Password for the Keystore that is used when connecting to LDAP using LDAPS or START_TLS. | 
| 
                         | Type of the Keystore that is used when connecting to LDAP using LDAPS or START_TLS (i.e.  | 
| 
                         | Path to the Truststore that is used when connecting to LDAP using LDAPS or START_TLS. | 
| 
                         | Password for the Truststore that is used when connecting to LDAP using LDAPS or START_TLS. | 
| 
                         | Type of the Truststore that is used when connecting to LDAP using LDAPS or START_TLS (i.e.  | 
| 
                         | Client authentication policy when connecting to LDAP using LDAPS or START_TLS. Possible values are  | 
| 
                         | Protocol to use when connecting to LDAP using LDAPS or START_TLS. (i.e.  | 
| 
                         | Specifies whether the TLS should be shut down gracefully before the target context is closed. Defaults to false. | 
| 
                         | Strategy for handling referrals. Possible values are  | 
| 
                         | Duration of connect timeout. (i.e.  | 
| 
                         | Duration of read timeout. (i.e.  | 
| 
                         | Space-separated list of URLs of the LDAP servers (i.e.  | 
| 
                         | Base DN for searching for users (i.e.  | 
| 
                         | Filter for searching for users against the  | 
| 
                         | Strategy to identify users. Possible values are  | 
|  | Note | 
|---|---|
| For changes to nifi.properties and login-identity-providers.xml to take effect, NiFi needs to be restarted. If NiFi is clustered, configuration files must be the same on all nodes. | 

