Using Lightweight Directory Access Protocol (LDAP) With Zoomdata

Lightweight Directory Access Protocol (LDAP) is an application protocol used over an IP network to manage and access directory information contained in an organization’s secured network. Zoomdata has been tested and can be used with Active Directory and OpenLDAP directory services. The Zoomdata server can be configured to use one of these LDAP services to authenticate users. When LDAP is enabled, users can log into Zoomdata using their familiar LDAP identity and credentials.

Only supervisors can manage Zoomdata LDAP configurations.

Connecting Zoomdata to an LDAP directory requires coordination between the authorized LDAP administrator and the Zoomdata administrator. After enabling LDAP authentication in Zoomdata, you can import users in the LDAP directory of your organization. All user information will be maintained in LDAP, not in your Zoomdata user accounts.

The following LDAP configuration information is needed to configure LDAP in Zoomdata:

Screen Box Description

The LDAP connection string for connecting to the LDAP repository. Connection string is of the following format:

  • Replace <ldap-server> with the DNS name or IP address of the LDAP repository server
  • Replace <ldap-port> with the port number where the LDAP service is listening on <ldap-server> (typically port 389)
Bind user User name credential of the service account that (at minimum) has read access to the LDAP repository.
Bind password Password credential for the Bind user (LDAP service account).
Search base Identifies the Distinguished Name (DN) - the location in the LDAP directory tree where to begin queries for registered users in the LDAP directory.
Query LDAP query that will resolve a specific set of users group found in the search base to be imported into Zoomdata.
User ID attribute Identifier attribute for users in LDAP implementation of your organization.
The following user ID attributes are supported: UID, CN, sAMAccountname, and userPrincipalName. This attribute will determine how user names will be represented in Zoomdata.

Configuring LDAP

To configure LDAP:

  1. Log into the Zoomdata server as the supervisor.
  2. Click to see the Supervisor menu.
  3. Select Security on the Supervisor menu. The security tabs display.

  4. On the Security Services tab, make sure that the LDAP security service is on. If it is not running, turn it on.
  5. Select the LDAP Settings tab. The LDAP Settings tab has five sections: General Settings, LDAP Server, User Provisioning, Mappings, and Mappings to Custom User Attributes.

  6. In the General Settings section, toggle the Enable LDAP option on.
  7. Enter the LDAP connection URL (DNS or IP address) where the LDAP directory resides.
  8. Enter the Bind User and Bind Password credentials. The authorized LDAP administrator needs to provide these credentials.
  9. Specify the Search Base which is the DN or location in the LDAP directory tree where a search for registered users can begin. An example entry is provided in the text field: OU=people,DC=zoomdata,DC=local, where:

    • OU means organizational unit
    • DC means domain controller
  10. Provide a query string that can run to identify user nodes under the Search Base. An example is provided in the text field: (objectclass=person). Keep in mind that you can only import individual users into Zoomdata. As a result, your query should be limited to objects that are designated as a “person” or “user.” Use a search engine to look up 'common LDAP query strings'.
  11. Optionally enable user provisioning, configure mappings and mappings to custom user attributes.
  12. Manually import users from the LDAP directory. See Manually Importing Users from the LDAP Directory.
  13. To use the secure LDAP connection, import the certificate to your local jre key store. See Using the Secure LDAP Connection.

Enabling User Provisioning

Use the User Provisioning section to enable user provisioning. User provisioning allows you to verify the identity of users that log into Zoomdata against the LDAP directory and automatically create new users in Zoomdata if the user's credentials have been validated against the LDAP directory.

If disabled, you must manually import the users in order to allow them to log into Zoomdata. See Manually Importing Users from the LDAP Directory.

When you have enabled the auto provisioning feature, you can select the default account for the provisioned users to be added.

The Default Account list contains all the account names, that are available within your Zoomdata instance. If you want the users to be added to one of them, select the corresponding account. Otherwise, select the User Account Mapping option to configure the mappings with LDAP attributes for your users.

Configuring Mappings

Use the Mappings subtab to define mappings that bind the user attributes from LDAP and Zoomdata.

  1. Select Login Name Mapping attribute from the list that will be used as a user login. There are four User ID Attributes supported: UID, CN, sAMAccountname, and userPrincipalName.
  2. Account Mapping - select the account to which for the user to be added to
  3. Active Account Mapping - select the account to which the user will log in for the first time
  4. Full Name Mapping
  5. Email mapping
  6. If you want to import users and the groups which they are assigned to, in the Group mapping attribute box, type the name of the corresponding column in LDAP.
  7. If you want Zoomdata to automatically create groups for users if they don't exist in your environment yet, toggle on Auto Create Groups.
    After the credentials are verified, the user groups will be created in Zoomdata and each user will be assigned to the corresponding group.

Managing Mappings to Custom User Attributes

You can associate custom user attributes with a Zoomdata user on the Mappings to Custom User Attributes subtab. Custom user attributes can to store values used for credential pass through. This means that if users have access to a particular data source that has been connected to Zoomdata, their credentials can be saved on this page so that their access privileges are maintained for that source within Zoomdata.

Manually Importing Users from the LDAP Directory

To manually import users from the LDAP directory to Zoomdata:

  1. Log in as a supervisor and click the Accounts tab.

  2. Select the appropriate account to import users from the LDAP directory. Click the Users tab.

  3. On the Users page, click Import Users. A list of users in the LDAP directory is displayed.

  4. To import specific users, select them from the list. To import all users, click Select all.

  5. Click Import.

If needed, you can delete imported users using the Users list in the left pane.

After users have been imported into Zoomdata, they can be assigned groups and permissions. For an overview of how Zoomdata manages users and groups and how to assign groups and permissions, see Authorizing Zoomdata Access.

When a user is imported from Active Directory or if user provisioning is enabled and a new Active Directory user is added, the corresponding Zoomdata user definition is automatically added. However, when a user is removed from Active Directory, the corresponding Zoomdata user definition is not automatically removed. Zoomdata authentication does not occur for the removed user, but you will need to manually remove the Zoomdata user definition. See Deleting User Definitions.

Using the Secure LDAP Connection

To use the secure LDAP connection, you need to import the certificate to your local jre key store.

  1. Run the following command:
   sudo keytool -import -file ca_file_name.pem -keystore /opt/zoomdata/jre/lib/security/cacerts
  1. Restart Zoomdata after importing the certificate:
   sudo service zoomdata restart

Now when using a secure connection to LDAP, the URL must be as follows: ldaps:// ldap server :636