2010-01-14 56 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