Архитектура приложения-сервиса в WCF - PullRequest
4 голосов
/ 14 января 2010

Мне нужна помощь с архитектурой приложения WCF. Это будет ряд услуг, которые должны быть доступны для обслуживания различных клиентов, например,

  • Приложение ASP.Net (JavaScript и / или Silverlight)
  • iPhone
  • Windows Mobile
  • Android

Некоторым службам требуется аутентификация, а некоторые будут доступны без аутентификации.

Мне нужны советы по службам, требующим аутентификации, я хочу использовать учетные данные имени пользователя и пароля по SSL.

Как (если это возможно / рекомендуется для всех типов клиентов) мне разработать это в WCF?

1 Ответ

3 голосов
/ 14 января 2010

Вы можете (и должны) отделить Аутентификацию от реализации службы, чтобы вы могли изменять их независимо. Это возможно путем реализации (или повторного использования) ServiceAuthorizationManager .

Приятно то, что они могут быть определены в .config, и вы можете кодировать весь сервис, ничего не зная о том, как пользователь аутентифицировался.

Если вам нужно узнать больше о пользователе, вы можете использовать Thread.CurrentPrincipal .


Чтобы реализовать проверку имени пользователя / пароля, внедрите UserNamePasswordValidator .

...