我认为这很容易,但我有点失落。
问题很简单,我有一个必须使用数字证书登录的网络应用程序。我之前从未管理过数字证书,因此我尝试复制其他应用程序的方式。在登录控制器中:
NegocioException.assertTrue(request.getAttribute(ConpactConstantes.ATRIBUTO_CERTIFICADO) != null, "Para acceder al sistema ha de indicarse el certificado digital.");
X509Certificate[] certificados = (X509Certificate[]) request.getAttribute(ConpactConstantes.ATRIBUTO_CERTIFICADO);
X509Certificate certificado = certificados[0];
当我按下登录按钮时,我没有窗口要求提供证书,就像其他应用程序那样,并且在执行时:request.getAttribute(ConpactConstantes.ATRIBUTO_CERTIFICADO)
我获得了null。
如何触发窗口选择证书?使用weblogic 10.3.6
答案 0 :(得分:0)
属性的正确名称是javax.servlet.request.X509Certificate
(Servlet规范3.0#3.8)。确实以X509Certificate[]
提供。您必须配置servlet或J2EE容器以请求或要求客户端证书。如果它没有出现则没有提供。