我試圖消費使用證書的Java Web服務。我可以生成代理,添加服務參考。問題是:它需要基本的HTTP授權標頭。 它需要引用用戶/密碼並將它們傳遞到標題中。使用.NET客戶端消費Java Web服務
謝謝。
我試圖消費使用證書的Java Web服務。我可以生成代理,添加服務參考。問題是:它需要基本的HTTP授權標頭。 它需要引用用戶/密碼並將它們傳遞到標題中。使用.NET客戶端消費Java Web服務
謝謝。
這取決於您使用的.NET版本。
如果您可以使用WCF,您只需更改綁定,傳遞憑據並讓框架完成工作。
你可以在這裏找到配置說明(你只需要客戶端配置下半場):
Transport Security with Basic Authentication - MSDN
否則,您可以下載Web Service Extensions (WSE) 3.0和使用,對於簡單的身份驗證。
Implementing Direct Authentication with UsernameToken in WSE 3.0
這聽起來像Java的Web服務使用SSL,TLS協議,而不是老派的SSL協議。您不需要「在標題中加密證書用戶名和密碼」。我現在不在你聽到的那個地方。如果它的一個常規證書是Java默認cacerts密鑰庫的一部分,那麼Java已經擁有內置的密碼。
如果我是自簽名證書(在Web服務端),您可能需要以某種方式告訴C#信任自簽名證書。另外,您所指的「憑證」不是用戶名+密碼,而是僅僅是私鑰有效負載。
感謝您的WCF解決方案。在客戶端(Windows窗體)中使用ServiceModel組件進行工作。對於授權,我只是啓用綁定以使用基本安全性,並傳入客戶端證書。 – Erup 2010-04-17 22:24:13