Configure Single Sign-on for LDAP or LDAPS
EnterWorks can be configured to manage users through an Identity Provider (IDP) using the LDAP or LDAPS protocol. Due to operational requirements, port, and LDAP/LDAPS differences, protocol usage may differ between development, test, QA, and production environments.
To configure LDAP or LDAPS, both the Classic and New UIs must be configured. The Classic UI must be configured first.
-
If you are configuring for LDAPS, configure the certificate
file.
To configure the certificate file:
- Obtain from the customer the certificate file:
and store it in the folder:caCert.pem
This file must be in PEM format and must be named as specified above.<drive>:\Enterworks\certs\ldaps
- Copy the file:
to:<drive>:\Enterworks\jdk\jre\lib\security\cacerts
<drive>:\Enterworks\certs\tomcat.jks
- Set the keystore password to
enterworks
. If you want to set the password to something else, you can, but when you edit theservices.bat
file below, make sure to specify your password instead ofenterworks
. To set the password, open a command prompt and run thekeytool
utility by typing the following all in one line:
Respond to the questions it asks as follows:<drive>:\Enterworks\jdk\bin\keytool -storepasswd -keystore <drive>:\Enterworks\certs\tomcat.jks
-
Enter the keystore password:
changeit
-
New keystore password:
enterworks
-
Re-enter the new keystore password:
enterworks
-
Enter the keystore password:
- Import the
caCert.pem
file into the keystore. Open a command prompt and run thekeytool
utility by typing the following all in one line:<drive>:\Enterworks\jdk\bin\keytool -import -alias tomcat -file <drive>:\Enterworks\certs\ldaps\caCert.pem -keystore <drive>:\Enterworks\certs\tomcat.jks
- Add the keystore to EPIM Tomcat. Edit:
Add to the following to the property:<drive>:\Enterworks\EnableServer\tomcat\bin\services.bat
--JvmOptions
. Make sure to replace<drive>
with the actual drive name. If you are using a password other thanenterworks
, make sure to replaceenterworks
with your desired password. Note that although these settings have the term "SSL" in them, they are for LDAPS also.-Djavax.net.ssl.trustStore=<drive>:\Enterworks\certs\tomcat.jks; -Djavax.net.ssl.trustStorePassword=enterworks;
- Restart the EnableServerTomcat service. Open a command prompt and run
the commands:
<drive>:\Enterworks\EnableServer\tomcat\bin\services.bat remove
<drive>:\Enterworks\EnableServer\tomcat\bin\services.bat install
- Obtain from the customer the certificate file:
-
Configure the Classic UI for SSO using LDAP or LDAPS
To configure the Classic UI for SSO using LDAP or LDAPS protocol:
- Log into the Classic UI as a user with Administrative privileges.
- Open the Feature Bar, open the Users and Group folder, and open the Users tab.
- Open the Utilities dropdown and select LDAP Configuration. The LDAP Properties Settings pop-up will appear. Although this window and its settings use the term "LDAP", they are used for LDAPS as well.
- Check the LDAP Enabled checkbox. This indicates that the user will be managed by LDAP or LDAPS.
- Select Microsoft Active Directory as the Provider.
- Do not change the Context. It will update automatically.
- In the Search Scope dropdown list, select SUBTREE_SCOPE.
-
Enter the LDAP Server Host according to the protocol used:
-
For LDAP enter:
<hostname>
-
For LDAPS enter:
ldaps://<hostname>
-
- Enter the LDAP Server Port. This can be the server’s port or the default port for the protocol used.
- Enter the Search Base using standard LDAP terms.
- User Context Search Base (Optional) Enter the full domain name.
- In User Default Domain enter the short domain name.
- Click Save.
- Make sure that the Classic UI is functional by logging in.
-
Configure the New UI for SSO using LDAP or LDAPS
To configure EnterWorks for SSO using LDAP or LDAPS, on the server that hosts
enable-api-go-service
:- To configure automatic provisioning, update shared configuration properties to set:
security.ldap.groupSync=true
- The create-scripts
(
create-<service-name>service.cmd
) should exist in the following folder. If they do not, create the create-scripts.<drive>:\Enterworks\enable2020\services\install
- Back up
create-enable-api-go-service.cmd
by copying it to:
To facilitate troubleshooting, append the datetime to the end of the filename of the backup file.<drive>:\Backup
- For both LDAP and LDAPS, edit
create-enable-api-go-service.cmd
:- Open the appropriate script in an editor. The scripts are
found in:
<install-drive>:\Enterworks\enable2020\services\install\
- Edit the
ldapIndicator
setting as desired.-
ldapIndicator=2
: (Recommended setting.) EnterWorks will only request that the IDP will authenticate users. When an existing EnterWorks user logs into EnterWorks, EnterWorks will confirm with the IDP that the user exists in the IDP's directory. If the user exists, EnterWorks will allow the user to log in. -
ldapIndicator=1
: (Default) Just In Time (JIT) provisioning (also known as Automatic provisioning). See Just In Time Provisioning. -
ldapIndicator=0
: (Default setting.) LDAP is not in use.
-
- If you are configuring LDAPS, set the
ldapKeysPath
parameter to indicate the location of thecaCert.pem
certificate file:-ldapKeysPath=<drive>:\Enterworks\certs\ldaps
- Save the script.
- Open the appropriate script in an editor. The scripts are
found in:
-
Use the
create-enable-api-go-service.cmd
script. - Restart the
enable-api-go-service
service.
EnterWorks is now configured to use SSO with LDAP or LDAPS.
- To configure automatic provisioning, update shared configuration properties to set: