3

我需要使用给定证书而不是别名执行DSStok:sign请求。

<alias>certificate</alias>

我试图用 base64 字符串替换下面的一个,但在日志中出现以下错误。

信息 | http-nio-8080-exec-3 | oacxf.services.SoapSignatureTokenConnection.FAULT_OUT | FAULT_OUT

示例,原始 SOAP 请求:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tok="http://token.dss.esig.europa.eu/">
   <soapenv:Header/>
   <soapenv:Body>
      <tok:sign>
         <toBeSigned>
            <bytes>wFNeS+K3n/2TKRMFQ2v4iTFOSj+uwF7P/Lt98xrZ5Ro=</bytes>
         </toBeSigned>
         <digestAlgorithm>SHA256</digestAlgorithm>
         <alias>certificate</alias>
      </tok:sign>
   </soapenv:Body>
</soapenv:Envelope>

我已经将证书添加到cacerts文件中,但无法通过getKeysSOAP 请求进行检索。或者另一方面,我如何将新的 p12 添加到服务器端以使其通过别名可用?

4

1 回答 1

0

p12 文件可在 dss.properties 文件中配置,不支持直接在请求中使用 base64:

Server signing token
dss.server.signing.keystore.type = PKCS12
dss.server.signing.keystore.filename = user_a_rsa.p12
dss.server.signing.keystore.password = password

如果是 dss-demonstrations 存储库的 demo-webapp 根,必须重新构建(mvn clean install)以将新的签名证书放入 webapp。

于 2019-02-20T07:49:52.560 回答