6.1 Setup Client-cert Authentication

Warning! Audit Deprecated

This audit has been deprecated and will be removed in a future update.

View Next Audit Version

Information

Client-cert authentication requires that each client connecting to the server have a certificate to authenticate. This is generally regarded as stronger authentication than a password as it requires the client to have the certificate and not just know a password.

Rationale:

Certificate based authentication is more secure than password based authentication.

Solution

In the Connector element, set the clientAuth parameter to true and the certificateVerification to required

<-- Define a SSL Coyote HTTP/1.1 Connector on port 8443 -->

<Connector
port='8443' minProcessors='5' maxProcessors='75'
enableLookups='true' disableUploadTimeout='true'
acceptCount='100' debug='0' scheme='https' secure='true';
clientAuth='true' sslProtocol='TLS'/>
...
<Connector ...>
<SSLHostConfig
certificateVerification='required'
/>

Default Value:

Not configured

References:

https://tomcat.apache.org/tomcat-9.0-doc/config/http.html

https://tomcat.apache.org/tomcat-9.0-doc/ssl-howto.html

See Also

https://workbench.cisecurity.org/files/2509

Item Details

Category: IDENTIFICATION AND AUTHENTICATION

References: 800-53|IA-5, CSCv7|16.4

Plugin: Unix

Control ID: 264acbe8d2034be5bea6fa44ad1318e131d7262161a9bf338bae4a3c494c39ad