【问题标题】:axis2.AxisFault: [clientAuthRequired] Client certificate not foundaxis2.AxisFault:[clientAuthRequired] 未找到客户端证书
【发布时间】:2013-04-29 08:27:27
【问题描述】:

我在尝试获取此异常(未找到客户端证书)时 连接到需要客户端证书的安全 Web 服务。我是 使用由axis2自动生成的Web服务客户端,使用 Eclipse 向导。

这是导致最后一行异常的调用代码:

System.setProperty("javax.net.ssl.trustStore","C:\\Archivos de programa\\Java\\jre7\\lib\\security\\cacerts");
System.setProperty("javax.net.ssl.trustStorePassword", "changeit");
System.setProperty("javax.net.ssl.keyStore","D:\\Perfil Usuario\\internet\\Escritorio\\workspace\\certificados\\clientes.jks");
System.setProperty("javax.net.ssl.keyStorePassword", "changeit");
ServicioBoletinStub lala = new ServicioBoletinStub();
ConsultaDeCatalogo cons = new ConsultaDeCatalogo();
cons.setArgs0("SECCIONES");
ConsultaDeCatalogoResponse conResp = lala.consultaDeCatalogo(cons);

客户端证书被导入到“clientes.jks”密钥库中,所有的 身份验证路径所需的其他证书在“cacerts”中。

我必须做的唯一奇怪的事情是将客户端证书从 .p12 到 .cer,因为 keytool 抱怨 .p12 文件不是 x509 证书。 .p12 文件使用密码加密,但 .cer 文件不是,所以我担心在这个过程中丢失了一些东西 转换。我对处理证书很陌生,所以我不知道我在做什么 我失踪了。

我也用SSLPoke测试了连接,没有报错。

非常感谢。

【问题讨论】:

    标签: java axis2 client-certificates


    【解决方案1】:

    好的,问题出在客户端证书的导入过程中,正如怀疑的那样。 Keytool 没有将私钥导入“clientes.jks”密钥库。

    我从这个密钥库中删除了所有内容,并按照这篇文章 (http://cunning.sharp.fm/2008/06/importing_private_keys_into_a.html) 导入了客户端证书和私钥。

    无论如何,我认为 Axis2 应该指定异常消息是从 SOAP 响应消息中获取的:我认为它是自己生成的。

    【讨论】:

      猜你喜欢
      • 2012-01-28
      • 1970-01-01
      • 2012-09-06
      • 2013-03-24
      • 2011-10-25
      • 2013-06-06
      • 2014-06-18
      • 1970-01-01
      • 2018-08-15
      相关资源
      最近更新 更多