浏览器用于向服务器发送请求的SSL Protocal

时间:2018-04-07 09:51:11

标签: tomcat servlets ssl-certificate tls1.2

我有一个客户端(浏览器)可以发出请求的Servlet。我想知道哪个SSL协议版本用于此请求,例如我的servlet中的SSL / TLS / TLS 1.1 / TLS 1.2。任何人都可以指导我完成这个。

我使用的是Java 8,Tomcat 8.5.9。

提前致谢

1 个答案:

答案 0 :(得分:0)

根据source code,Tomcat将此信息存储在请求属性javax.servlet.request.cipher_suiteorg.apache.tomcat.util.net.secure_protocol_version中。所以你应该能够做到:

public void doGet(HttpServletRequest request,
                  HttpServletResponse response) {
    String cipherSuite = request.getAttribute("javax.servlet.request.cipher_suite");
    String protocolVersion = request.getAttribute("org.apache.tomcat.util.net.secure_protocol_version");
...
}

意识到其中一些与您配置Tomcat的方式有关。例如,我经常将Apache放在Tomcat之前,并且具有从Apache到Tomcat的非SSL连接。在这种情况下,Tomcat无法向您提供所需的信息。