2010-01-16 52 views
1

我已經實現了一個使用TransportWithMessageCredential綁定和自定義UserNamePasswordValidator的WCF服務。使用Silverlight 3.0自定義UserNamePasswordValidator

我有一個Silverlight 3客戶端連接到此服務。如果我設置了有效的憑證,那麼它是完美的,但是,在用戶名驗證程序中,如果用戶名和密碼不匹配,則會拋出SecurityTokenException。

現在我已經實施了一個虛擬服務調用來驗證憑據,是否有一種「更好」的方式來檢查憑據。接受用戶名和密碼並返回true/false的服務方法並不安全。

回答

0

我認爲你會以錯誤的方式去考慮安全問題。有內建的方法來處理這個問題。查找「會員供應商」。例如:

http://blogs.msdn.com/brada/archive/2008/05/03/accessing-the-asp-net-authentication-profile-and-role-service-in-silverlight.aspx

+0

這不需要客戶端執行窗體身份驗證(或Windows)嗎?在SL情況下,這不是問題,但我也會有其他客戶端(例如iPhone),它們不會通過Web應用程序進行身份驗證。是否有可能只通過網絡服務呼叫來認證呼叫者,會員提供商可能很有趣。 – 2010-01-17 16:43:04

+0

我發佈的鏈接使用純粹的WCF驗證服務。只要它支持SOAP Web服務,客戶端可以是任何東西。在文章中尋找「AuthenticationService」。 – vidalsasoon 2010-01-18 00:49:29

相關問題