gas*_*ush 2 java authentication ssl servlets jax-ws
我有一个Servlet容器(Glassfish/OC4J),它为一些可以使用HTTPS访问的JAX-WS Web服务端点提供服务.SSL配置为支持客户端身份验证和仅服务器身份验证(如Glassfish上的client-auth ="want").
在我的端点实现中,我想知道连接是否使用客户端身份验证完成.我已经有了访问该HttpServletRequest对象的权限,但是该getAuthType()方法总是返回null,如果Client auth完成则不会返回null(使用wireshark检查以确保它符合我的要求).
有谁知道如何访问这些信息?
非常感谢
所述javax.servlet.request.X509Certificate请求属性应返回的数组java.security.cert.X509Certificate.
您可以使用以下命令从您的请求中获取:
X509Certificate[] certs = req.getAttribute("javax.servlet.request.X509Certificate");
Run Code Online (Sandbox Code Playgroud)
如果非null,并且如果它包含某些内容,则第一个元素(certs[0])将是客户端证书本身.此数组中可能还有其他元素,其中包含中间CA证书(客户端提供的内容可以是证书链),其中cert[i]包含cert[i+1].
| 归档时间: |
|
| 查看次数: |
1351 次 |
| 最近记录: |