2013-05-27 76 views
2

我期待確保WCF服務,是「自我託管」 WinForms應用程序內。WCF安全,TCP或HTTP?

我已經做了我的研究,但我不知道什麼,我試圖做什麼「適用」。

我沒有偏愛TCP綁定的HTTP,但我想TCP會從根本上更快?不管如何,如果我使用TCP,我還需要設置證書嗎?我不希望爲客戶端和服務器創建自簽名證書。或者我應該如何?

我的基本概念,並幫助我,如果我偏離軌道的位置,應該是:

客戶< ---- HTTPS/TCP ---->用戶名/密碼 - (擔保如何?) - > < --- wcf ---> < ---內部驗證---> < - 重複位 - >

我想處理我自己的憑據授權,因爲我打算驗證WCF的......我只關注這裏後面的內部系統,真的,是如何最好地「發送」我的認證信息通過線路,並有後...保持往返消息/數據「安全」

任何指針?

回答

2

的net.tcp將是普遍表現較好的結合了兩部。 HTTP的優勢在於其純粹的互操作性。如果您的服務將在您的應用程序內部,請使用NET.TCP。如果你打算做其公開,以便其他應用程序可以使用它,用HTTP去(甚至更好在我看來,一個RESTful API的Web服務)。

假設你的net.tcp去,你必須爲保護您服務的幾個選項。這些選擇歸結爲兩個主要方法:消息級安全性和傳輸級安全性。消息級安全性是勞動密集的,因爲它確保每一個人的消息,但必要的,如果你是跨中繼不安全渠道的消息。在另一方面 傳輸級安全性是性能更好,而且會做的伎倆,如果你的服務是嚴格內部,因爲它基本上是由通過安全通道從A點到B點傳送信息的工作。

由於WCF安全性是可以在SO響應討論複雜得多,我強烈建議你進一步閱讀起來就可以了。這裏有一些鏈接,讓你開始:

實現消息級安全

實現傳輸級安全

實現證書

+0

謝謝!讚賞 –