0

我正在尝试使用 WebAS 上的客户端证书设置 SSL 相互身份验证。使用我用 JavaEE 编写的 SOAP Web 服务。我正在尝试使用 SOAP UI 对此进行测试 - 但是我在尝试找出 SOAP UI 是否发送所需的所有内容时遇到了困难,例如,在将我的 PFX 配置为项目设置中的密钥库之后(包括私钥在那里指定),我仍然在 Charles Proxy 中看到纯文本请求。我已经尝试过 tcpmon 但它没有产生任何更好的结果。

有什么方法可以验证请求是否在客户端正确发送?因为在服务器端我只看到“身份验证失败”。我在 Oracle 的文档中看到,有一个名为 USER_CERT 的标头字段 - 但这是标准吗?我在请求中的任何地方都没有看到它。我需要检查客户端是否正确,直到我可以在服务器端进行一些试验和错误。

非常感谢!

4

2 回答 2

1

您应该能够查看是否正在使用javax.net.debug系统属性发送客户端证书,如调试 SSL/TLS 连接”中所述。

充其量,Fiddler 本身可以发送其客户端证书,但这与让您的应用程序将其直接发送到服务器并不完全相同。如果 Fiddler 也向您的应用程序请求客户端证书(我不确定它是否可以这样做),它可能能够充分模仿该行为,但这实际上与您的目标服务器看到的实际客户端证书无关(尽管您在实践中可能会使用相同的方法)。

于 2012-09-24T13:17:06.677 回答
0

显然,由于某种原因,我的 SOAP UI 无法发送客户端证书。所以我在 SOAP UI 和我的服务器之间设置了 Fiddler。

在 Fiddler 中弹出一条消息,表明服务器正在请求证书,当我将正确的证书放在指定的路径中时,登录就可以了!

我已经阅读了大量的soap ui文档和讨论线程,由于错误(4.5.0无法读取密钥库),不得不用另一个版本替换soap ui两次,4.5.1显示了一个类转换异常,我回到 4.0.1 - 只是让它在五分钟内与 Fiddler 一起工作:)

于 2012-09-24T13:10:04.333 回答