有什么方法可以在浏览器发送的tomcat过滤器中获取所有x509证书属性?

时间:2019-10-22 10:58:12

标签: java tomcat x509certificate client-certificates

我的要求是使用x509客户端证书而不是用户名和密码进行身份验证。我的应用程序中有两种身份验证模式。

  1. 本地
  2. 外部(半径)

通过从HTTPrequest获取证书,只需验证其中一个tomcat过滤器中的证书,就可以在本地模式下对证书进行身份验证

X509Certificate clientCertChains[] = (X509Certificate[]) request
                        .getAttribute("javax.servlet.request.X509Certificate");

对于外部身份验证,我需要使用EAP_TLS协议将接收到的证书发送到外部服务器。为了实现这一点,我需要给定x509证书的apache以下信息。

TLS certificate, ( This is available in httpRequest)
TLS client_key_exchange,
TLS certificate_verify,
TLS change_cipher_spec,
TLS finished  

我的实际工作流程如下:

浏览器-> x509证书-> Tomcat(春季)-> X509证书(EAP -TLS)-> Radius服务器

当x509证书放置在服务器中时,我能够使用EAP_TLS来通信Radius。

X509Certificate clientCertChains[] = (X509Certificate[]) request.getAttribute("javax.servlet.request.X509Certificate");

0 个答案:

没有答案