If the end users are to authenticate with a client certificate to Identity Manager, an HTTPS connection with client authentication via a two-way SSL handshake, is required. This is typically used for login with smart card or soft token to Identity Manager.
To set up client-side authentication:
- For docker: not supported
- For WAR file deployment:
Create a truststore file. The easiest way to do this is using the java keytool which is part of the JRE and can be found in <java_home>\bin
. For each issuing CA, execute the following command:
"<java_home>\bin\keytool.exe" -importcert -alias <issuingCA01> -trustcacerts -file issuingCA01.cer -keystore prime.truststore -storepass 123456
where <java_home> is replaced with the path to java, and <issuingCA01> is replaced with the unique name of each corresponding certificate. Always use the same prime.truststore file.
Copy the server certificate .p12 or .pfx file and the truststore file created in the previous step, to the Tomcat application server.
Check which port to use for the HTTPS connection. The default HTTPS port is 443. Tomcat default is 8443, but any other port is allowed as long as there is no collision with any other service on the application server.
Note: The port must be allowed in the firewall settings of the customer.
Edit the server.xml file in <TomcatHome>\conf and add a corresponding HTTPS connector. Adapt the .p12 filename, truststore filename, passwords and HTTPS port to your environment.
<Connector port="18444" protocol="HTTP/1.1" SSLEnabled="true"
maxPostSize="-1"
scheme="https" secure="true" sslProtocol="TLS" clientAuth="true"
keystoreFile="C:\cert\primeCert.p12" keystorePass="123456" keystoreType="PKCS12"
truststoreFile="C:\cert\prime.truststore" truststorePass="123456" truststoreType="JKS"
/>
Restart Tomcat.