仅在带有Java的Tomcat 8+上启用日志记录SSL握手失败(审计目的日志)
如果 SSL 握手失败,而 REST 客户端尝试连接到我的应用程序,我需要记录。该应用程序是使用Spring Boot和Java 8构建的,并部署在Tomcat 8上。
在 SSL 握手失败的情况下,由于 TLS 连接已断开,因此可能必须在 Tomcat 层或 Java 中完成日志记录要求,因为在我的案例中,Tomcat 使用底层 JVM 进行 SSL 证书验证。
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol" SSLEnabled="true" scheme="https" secure="true" keystoreFile="keyStore-1.jks" keystorePass="password" keystoreType="jks" truststoreFile="TrustStore.jks" truststorePass="passwrd" truststoreType="jks" clientAuth="want" sslProtocol="TLSv1.2" />
我知道启用调试级别日志记录。
-Djavax.net.debug=ssl
但这会记录大量信息,并会减慢该过程。并记录成功的 SSL 评估。有没有办法在Java或Tomcat级别使用最少的日志单独启用故障案例。
我不是从调试的角度来看待这个问题,因为SSL调试日志对此非常好。此要求更多地来自日志记录和审核目的,启用调试日志不是一个可行的选项。一种仅记录发生的 SSL 错误而不是所有十六进制/证书数据的机制。