我們正在從舊的.NET 1.1遠程系統轉移到.NET 4.0 WCF體系結構。系統的一部分是一個桌面客戶端應用程序,我們正在使用這個應用程序來調用位於我們中間層的300多個函數。跨多個服務的WCF安全性
我們正在將這些遠程功能合併到9個服務中,但需要一種很好的方法來驗證用戶在任何其他後續WCF調用之前首先執行了「登錄」功能。
由於登錄只發生在其中一個服務上,我不確定是否有辦法在整個服務中「聯合」這個服務。 (所有都在同一臺機器上,同一個域中)。我們通過net.tcp公開服務,目的是在長期內允許外部客戶端綁定wshttp。 (不知道如果我得到一些額外的不同綁定,可能會有所幫助)
我想出的是承載一個持有身份驗證信息的單身人士。當用戶登錄被驗證並提交給「安全商店」時,我們會返回一個Guid返回給客戶端,以後續的WCF調用發送。
然後每個WCF調用將針對單身「安全存儲」進行驗證。
所以問題是......我可以使用WCF原生的東西來實現這個相同的目標嗎?
既然你想要去與自定義基於令牌的身份驗證,看看我的答案在這裏,這幾乎涵蓋了你的問題:http://stackoverflow.com/questions/11349539/wcf-authentication-service-or-token-based-security/11350784#11350784 – 2012-07-06 22:22:27
什麼你現在正在進行身份驗證嗎? – Paparazzi 2012-07-07 02:31:48
我們對使用自定義類的數據庫使用salt和hash。但是這給了我一個想法,我們可能想要去用戶憑證路線。即使安全性決定我們需要執行令牌,我們也可以將該令牌作爲用戶憑證上的「密碼」來傳遞。我希望找到一種不會一次又一次回到數據存儲的方式,但是這會起作用。 (但是,如果它成爲性能問題,我們可以將它存儲在我們的「緩存」單例中)。謝謝! – Tojamismis 2012-07-07 03:17:20