背景资料。
我的公司要求证书才能访问肥皂服务。他们要求我向他们提交一份csr,然后他们用他们的根CA签名。然后,他们将带有root ca证书的签名证书发回。
Portacle 我已经在SoapUI中使用Program Portacle导入我得到的pem文件并导入根证书(CA证书),然后使用Portacle导出密钥对,私钥和证书格式为pem格式。哦,我还用密码保护密钥对。
了SoapUI 在SoapUI中,我将导出的pem文件添加到WS-Security Configurations下的Keystores区域以及我在Portacle步骤中使用的密码。然后,我通过添加带有以下配置的WSS签名条目来配置传出WS-Security配置。 密钥库我上面设置的那个 密码我在上面设置的密码 二进制安全令牌 签名算法:rsa-sha1 签名规范化:默认 摘要算法:sha1 使用单一证书:是
在我的soap请求中,我使用授权:Basic,我为OutgoingWSS选择我的WSS配置:我在上面设置。
在node-soap中。我不确定如何设置它。我尝试使用从Portacle导出的.pem文件来获取privatekey和publick键并输入我的密码。 node-soap接受了这个,但我回来了,错误:authorizationError:'SELF_SIGNED_CERT_IN_CHAIN'我试过将pem文件分解为私钥和证书,我尝试使用syswide-cas将root-ca证书加载到节点I中我还尝试使用ssl-root-cas将root-ca加载到节点中,作为最后一次尝试,我尝试添加process.env.NODE_TLS_REJECT_UNAUTHORIZED =“0”;但每次都会得到同样的错误。不确定如何继续
答案 0 :(得分:0)
尝试使用.p12或.pkcs12文件。 按照文档说明(https://github.com/vpulim/node-soap#outgoing-soap-headers):- pfx:包含PFX或PKCS12格式的服务器的私钥,证书和CA证书的字符串或缓冲区。(通常与key,cert和ca选项互斥。)