| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Общие вопросы по .NET и C# > Аутентификация и авторизация пользователей в веб-с |
| Автор: Anyone 20.12.2011, 14:47 | ||||
| Подскажите, пожалуйста, как лучше всего реализовать аутентификацию и авторизацию пользователей в asmx веб-сервисе на основе ролей? Пользователи и роли удут храниться в БД. Также интересует возможность регистрироваться и управлять своим профилем. Решил использовать Membership со своим MembershipProvider. Вот метод Login():
У меня Membership.GetUser().UserName возвращает пустую строчку. Тестовый MembershipProvider:
Почему я не вижу текущего пользователя? Как определить метод Logout? Спасибо. |
| Автор: jonie 22.12.2011, 21:37 | ||
| вам надо будет делать два сервиса: один безопасный (закрытый паролем и логином) второй для действий регистрационного характера. В WCF это уже сделано за вас (Windows Communication Foundation Authentication see http://msdn.microsoft.com/en-us/library/bb386582.aspx), а вот в старых наврядли. Поясняю: старые сервисы это сервисы на основе инфраструктуры asp.net. Авторизация там соотвественно тоже ихняя и может использовать (зависит от настроек) либо cookie либо что-то типа того (обычно куки, используя Forms Authentification). Соотвественно нужен будет сервис (незащищенный, разруливается в web.config) который будет уметь вызывать методы MembershipProvider-а (типа ValidateUser), и если всё окей эти самые хитрые куки ставить\снимать используя методы что ниже (подробнее http://support.microsoft.com/kb/301240)
юзерную информацию на авторизированном сервисе вы сможете получить используя User.Identity |