- An SSL plugin to enable x509 Client Certificates to work directly with tomcat
## CADC Tomcat Realm Plugin
This plugin will authenticate users who enter with a userid and password. The authentication mechanism will call the access control web service (in module cadcAccessControl-Server) to see if the credentials are correct.
To use this plugin, add the following line to the <Host> element (within the <Service> element) in the tomcat 7 server.xml file:
The SSL plugin is a custom custom trust management implementation for apache tomcat (version 7) that overrides the default tomcat trust behaviour by adding trust to valid proxy certificates.
cadcTomcat Installation Steps:
1. Create / identify keystore file (serves as server identity)
2. Create / identify truststore file (list of CAs that server trusts)
3. Checkout cadcTomcat source and build
4. Include cadcTomcat.jar in $CATALINA_HOME/server/lib
5. Configure server.xml to use custom trust store
### Step 1: Create / identify keystore file (serves as server identity)
Steps to create a development version of a keystore file.
Notes:
- Common name (first & last name) must be the fully qualified name of the server.
- Keystore password MUST match key password (only hit enter on last step)
- Record name/location of keystore and password for use in Step 5.
What is the two-letter country code for this unit?
[Unknown]: CA
Is CN=server.cadc.nrc.ca OU=CADC, O=NRC, L=Victoria, ST=British Columbia, C=CA correct?
[no]: yes
Enter key password for <tomcat>
(RETURN if same as keystore password):
```
### Step 2: Create / identify truststore file (list of CAs that server trusts)
Steps to create a development version of a truststore file.
Notes:
- Only one truststore file can be used. This means that the common list of CAs needs to be merged with any internal CAs.
- The common list of java trusted CAs is: $JAVA_HOME/jre/lib/security/cacerts Note the location / name of the truststore file. The password is 'changeit'.
If no internal CAs need to be identified, then the default java trust store
file can be used: $JAVA_HOME/jre/lib/security/cacerts
Otherwise, follow these steps to combine the common set of CAs with internal