2010-01-14 121 views
4

我需要一些WCF應用程序的構建方面的幫助。這將是許多應該可用於服務於多個不同客戶的服務,例如,WCF服務應用程序的體系結構

  • ASP.Net應用程序(JavaScript和/或Silverlight)
  • iPhone
  • 的Windows Mobile
  • 的Android

一些服務需要身份驗證和一些將提供W/O認證。

我需要一些關於需要身份驗證的服務的建議,我想通過SSL使用用戶名/密碼憑據。

如何(如果可能/建議所有客戶端類型)我應該在WCF中設計它?

回答

3

您可以(也應該)將認證與服務實現分開,以便您可以獨立地更改這些認證。這可以通過實施(或重複使用)ServiceAuthorizationManager來實現。

這些好處在於,它們可以在.config中定義,並且您可以在不知道用戶身份驗證方式的情況下對整個服務進行編碼。

如果您需要了解更多關於該用戶的信息,可以使用Thread.CurrentPrincipal


要實施用戶名/密碼驗證,請實施UserNamePasswordValidator

+0

謝謝,這回答我的問題的大部分。關於用戶名/密碼認證本身,您是否對實施有任何建議? – 2010-01-14 14:35:49

+0

編輯我的答案以回答這個問題以及:) – 2010-01-14 14:41:58

+0

謝謝你的幫助! – 2010-01-14 15:04:15