2012-09-24 96 views
0

我正嘗試在WebAS上與客戶端證書建立SSL相互驗證。使用我用JavaEE編寫的SOAP Webservice。我正在嘗試使用SOAP UI來測試它 - 但是,在嘗試查找SOAP UI是否發送所需的所有內容時遇到困難,例如將PFX配置爲項目設置中的密鑰存儲庫(包括專用密鑰在那裏指定),我仍然在Charles Proxy中看到一個純文本請求。我嘗試過tcpmon,但沒有產生更好的結果。驗證正在發送的X.509證書

有沒有什麼辦法可以驗證請求在客戶端正確發送?因爲在服務器端我只看到「身份驗證失敗」。我在Oracle的文檔中看到,有一個名爲USER_CERT的標題字段 - 但是這是標準嗎?我的要求中沒有看到它。我需要檢查客戶端是否正確,直到我可以在服務器端嘗試&錯誤。

非常感謝!

回答

1

您應該能夠看到客戶端證書是否使用javax.net.debug系統屬性發送,如描述的在"Debugging SSL/TLS Connections"

充其量,Fiddler本身可以發送它的客戶端證書,但這與將應用程序直接發送到服務器並不完全相同。如果Fiddler也向你的應用程序請求客戶端證書(我不確定它是否可以這樣做),但它可能能夠充分模仿該行爲,但這實際上獨立於目標服務器看到的實際客戶端證書(儘管你可能會在實踐中使用相同的內容)。

0

顯然我的SOAP UI由於某種原因無法發送客戶端證書。所以我在SOAP UI和我的服務器之間設置了Fiddler。

在Fiddler中彈出一條消息,表明服務器正在請求證書,並且當我將正確的證書放入指定路徑時,登錄工作正常!

我已經閱讀了大量的soap ui文檔和討論主題,不得不用肥皂ui兩次替換另一個版本由於bug(4.5.0無法讀取密鑰存儲區),4.5.1顯示了一個類拋出異常,我回到4.0.1--只能在五分鐘內與提琴手合作:)