Java Spring启动-从HTTP请求读取x509客户端证书
如何从客户端接收x509证书?我正在使用Java的Spring引导框架和嵌入式tomcat。对于protyping,我使用Java SE配置了它: HttpsExchange HttpsExchange=(HttpsExchange)httpReq name=httpsExchange.getSSLSession().getPeerPrincipal().getName() 一个用户给了我一个在这里做这件事的参考(下面)Java Spring启动-从HTTP请求读取x509客户端证书,java,spring,certificate,x509,Java,Spring,Certificate,X509,如何从客户端接收x509证书?我正在使用Java的Spring引导框架和嵌入式tomcat。对于protyping,我使用Java SE配置了它: HttpsExchange HttpsExchange=(HttpsExchange)httpReq name=httpsExchange.getSSLSession().getPeerPrincipal().getName() 一个用户给了我一个在这里做这件事的参考(下面) 但是我没办法拿到证书!可能是因为我正在使用tomcat,它正在处理所有SS
但是我没办法拿到证书!可能是因为我正在使用tomcat,它正在处理所有SSL连接。所以没有任何证书收到我的申请。我要做什么才能拿到客户证书?客户端证书用于获取https连接。我需要证书主题的一些信息。谢谢。您必须从
HttpServletRequest
获取它
您可以检查此问题的答案::
不,你不能那样做。您需要从HttpServletRequest获取它:
X509Certificate[] certs = (X509Certificate[])HttpServletRequest.getAttribute("javax.servlet.request.X509Certificate");
这是我想告诉你的帖子,是甘道夫写的
这是原版谢谢您的评论!排除故障后,我得到了它!这是从HttpServletRequest获取客户端证书的线路。
X509Certificate[] certs = (X509Certificate[])HttpServletRequest.getAttribute("javax.servlet.request.X509Certificate");