You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by bu...@apache.org on 2026/03/24 22:42:28 UTC
[Bug 69988] New: certificateVerification="none" with CLIENT-CERT does not work
https://bz.apache.org/bugzilla/show_bug.cgi?id=69988
Bug ID: 69988
Summary: certificateVerification="none" with CLIENT-CERT does
not work
Product: Tomcat Native
Version: 2.0.14
Hardware: All
OS: Linux
Status: NEW
Severity: normal
Priority: P2
Component: Library
Assignee: dev@tomcat.apache.org
Reporter: csdillard@gmail.com
Target Milestone: ---
I want to use TLSv1.3 post-handshake authentication (PHA) in order to require
client certificates only on certain protected URLs. The Tomcat documentation
(here, for example:
https://tomcat.apache.org/tomcat-11.0-doc/config/http.html#SSL_Support_-_SSLHostConfig)
states that this can be accomplished with a combination of the following:
- SSLHostConfig with certificateVerification="none"
- Protected resources in web.xml with <auth-method>CLIENT-CERT</auth-method>
- Tomcat Native with OpenSSL (since JSSE does not support PHA)
With this setup, the server hangs for 60 seconds when attempting to access
client-cert-protected resources then times out and sends an empty response.
Using curl at the command line (with -v, --cert, and --key) shows that Tomcat
(Native?) correctly sends the CertificateRequest message, curl correctly sends
the client certificate, and Tomcat (Native?) sends a new TLS session. But then
Tomcat appears to hang (waiting for a handshake, maybe?).
If I downgrade to TLSv1.2, everything works as desired.
If I use certificateVerification="required", protected resources work as
desired (no hang, client cert requested). But unprotected resources also
request a cert, which is not what I want. "optional" also works similarly.
My test environment:
Tomcat 11.0.20
Tomcat Native 2.0.14
APR 1.7.6
OpenSSL 3.0.13
Ubuntu 24.04.4 LTS
--
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org
[Bug 69988] certificateVerification="none" with CLIENT-CERT does not work
Posted by bu...@apache.org.
https://bz.apache.org/bugzilla/show_bug.cgi?id=69988
Mark Thomas <ma...@apache.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Resolution|--- |FIXED
Status|NEW |RESOLVED
--- Comment #2 from Mark Thomas <ma...@apache.org> ---
This has been fixed in
- 2.0.x for 2.0.15 onwards
- 1.3.x for 1.3.8 onwards
You will also need one of Tomcat
- 11.0.23 onwards
- 10.1.56 onwards
- 9.0.119 onwards
All of those releases should be happening shortly.
--
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org
[Bug 69988] certificateVerification="none" with CLIENT-CERT does not work
Posted by bu...@apache.org.
https://bz.apache.org/bugzilla/show_bug.cgi?id=69988
--- Comment #1 from Mark Thomas <ma...@apache.org> ---
There are multiple aspects to this.
The first is that OpenSSL changed behaviour in 3.0.0 and stopped triggering the
events Tomcat was using to determine the PHA had completed. Hence why you see
Tomcat hanging waiting for more data from the client even through the client
has no more to send.
That has been fixed for the June releases (coming soon).
The second is that the above only works when the trust store is configured
using OpenSSL style configuration. I'm currently working on a possible solution
for when JSSE style configuration is used for the trust store.
--
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org