Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

On this page

Table of Contents
maxLevel5


Basic

Configuration

configuration

In order for order for Common Access Card (CAC) authentication to work, SSL must be enabled in in Web Application Platform.

Next, you need to enable certificate authentication:

Code Block
authentication.certificate.enabled=true

The next step is to configure which part of the subject DN (distinguished name) will be used as the username (authentication.certificate.username.template), and which part will be displayed in the login screen (authentication.certificate.displayname.template).

Both of these values default to using (CN)

Configure

Configuring username

Code Block
authentication.certificate.username.template=(CN)

The template can contain ASCII characters as well as placeholders in parenthesis that are replaced with relative distinguished name (RDN) values  values from the DN (if the username is constructed from the Subject Distinguished Name) or SAN (if the username is constructed from the Subject Alternative Name) 

For example, when the subject DN or SAN (of type 4) on the certificate is CN=JohnDoe,O=MyCompany,C=GB:

Template: (CN), username: JohnDoe

Template: (O)-(CN), username: MyCompany-JohnDoe

Template: CERT_(CN), username: CERT_JohnDoe

Configure

Configuring the value displayed in the login button

To configure the value displayed in the login button, we must edit the authentication.certificate.displayname.template property property:

Code Block
authentication.certificate.displayname.template=(CN)

For example, as shown in the picture above, when the subject the subject DN or SAN (of type 4) on the certificate is is CN=JohnDoe,O=MyCompany,C=GB, and the display template is is (CN) CERTIFICATE, the button will display „JOHNDOE CERTIFICATE“.

For a list of all the advanced properties available for configuration, please refer to to Authentication by certificate.  

TrustStore Configuration

Configuring truststore

CAC integration requires that a truststore containing the Certificate Authority (CA) certificates that issue the user's certificates would exist.

Certificate verification should be enabled in the the WebAppPlatform/conf/server.xml file file. See the Tomcat configuration information for it on on this page. E.g., if the Tomcat SSL implementation is JSSE-based, you will need to add the following attributes to the SSLHostConfig property under Connector:

  • certificateVerification with  with the value value optional or  or  required  (if ONLY the certificate authentication is allowed).
  • truststoreFile - path to the truststore file containing the CA certificates.
  • truststorePassword - truststore password.
  • truststoreType - e.g. "JKS" or "PKCS12".

Certificate

Revocation List

revocation list

The authentication server supports 2 methods of handling certificate revocation lists - via a URL, or via a local list stored in the file system. To enable this feature, uncomment either authentication.certificate.revocation.list.url or  or authentication.certificate.revocation.list.file, and point it to the location of the revocation list.


Code Block
authentication.certificate.revocation.list.url=http://someserver.somedomain.com/revocation.lst
authentication.certificate.revocation.list.file=/opt/local/revovcation.lst