Download and install the latest version of NodeJS at https://nodejs.org/
Download and extract our LDAP client to a folder of your choice
Edit config.json to match your environment.
Here you can find the configuration values and a description of what information you need to enter:
JSON property | Mandatory | Description |
ldap_url | Yes | The internal URL / IP of your LDAP server. Example: ldap://ldap.forumsys.com . |
ldap_bind_credentials.user_cn | Yes | The user CN that is used for the LDAP bind. Usually a specific technical user is created for this with read only rights. |
ldap_bind_credentials.password | Yes | The password for the LDAP bind user. |
search_scope | Yes | This configures the search depth: base - searches only the search_base level; one - searches only the immediate subordinates to the base object, but does not include the base object itself; sub - this searches the search_base level and all of its subtrees. |
search_base | Yes | The search base used for looking up CN entries. This should be the top level of your LDAP domain where you want to look for entries. |
mobile_prefix | No | If your LDAP dictionary contains local or internal mobile phone numbers (without country code), you can add a prefix containing the country code. The first character of the local or internal mobile phone number will be replaced with this prefix. |
ldap_filter | No | If you want to filter the LDAP search results, you can do so using an ldap filter. This searches only for matching records. Examples of this filter are: only persons belonging to a specific group, only persons having a mobile phone number configured, ... . An example of a filter: (&(memberof=OU=VizitoGroup,OU=Applications,OU=Groups,DC=company,DC=com)) . |
api_port | Yes | Default value: 48800. This configures the port at which the node application will listen for HTTP(s) requests. |
use_ssl_for_api | Yes | Default value: false. If set to true, it will use the ssl.ca, ssl.key and ssl.cert configuration items to load a private key / public key pair for enabling TLS communication. Read up here on creating your own self-signed certificates using a custom root CA. |
authentication.enabled | Yes | Indicates if basic authentication is needed to make a request to this server. |
authentication.username | No | The username that is configured for basic authentication. |
authentication.password | No | The password that is configured for basic authentication. |
Open a command prompt, navigate to the folder where your ldap client resides, and run "node server.js"
If everything works as intended, you should see "Server is listening"
You can now use a browser to test the LDAP http server by pointing your browser to http://ip_or_hostname_of_machine_running_ldap_client:48800 (change the port if you changed it in the config file)
If your browser shows a JSON object representing the users you want to expose, than everything works!
Navigate to https://backoffice.vizito.be and under Settings, configure the Host datasource as 'Managed externally' and fill in the Integration URL.
An example: http://192.168.1.100:48800.
Now the tablet will look up the information from the installed client.
Download the latest release of NSSM at https://nssm.cc/download
extract the appropriate architecture executable to a folder of your choice.
now run the following command: nssm install ldap_client
This will show a window where your service parameters can be configured.
Now go to your Windows Services, start your newly created service, and test! Remember to stop any manually started instances of the LDAP client before starting the service.