Используйте пользовательский UserNamePasswordValidator или пользовательский поставщик членства - PullRequest
1 голос
/ 26 августа 2010

Я добавляю аутентификацию для своих служб WCF и смотрю на UserNamePasswordValidator и поставщика членства, для меня кажется, что они делают то же самое, но вы получаете гораздо больше пользовательских функций при использовании поставщика членства. Поскольку мне нужна только аутентификация по имени пользователя и паролю, моя БД содержит все данные о пользователях и ролях, я просто думал о создании пользовательского UserNamePasswordValidator и использовании его в службе. У кого-нибудь есть плюсы / минусы, которые можно использовать в WCf для аутентификации?

Мне интересно еще одно: поскольку для передачи ClientCredentials в WCF требуется HTTPS, как отлаживать приложение без исключения при аутентификации?

Спасибо за помощь:)

1 Ответ

2 голосов
/ 26 августа 2010

И UserNamePasswordValidator, и MembershipProvider выполняют одно и то же - они проверяют учетные данные пользователя.Разница только в подходе, который вы выберете.Поддерживается поставщик членства, позволяющий использовать ту же аутентификацию, что и в веб-приложении хостинга.

У вас будет другая проблема.Вы упомянули роли.Ни валидатор паролей, ни провайдер членства не имеют с ними дело, поэтому создание собственного валидатора паролей не позволит вам назначать роли текущей личности.Это ответственность различных компонентов в движке WCF - AuthorizationPolicy, а также в конвейере ASP.NET - RoleProvider.WCF позволяет вам использовать ASP.NET RoleProvider или создать Cutom авторизацию .

...