2013-07-24 4 views
1

Для реализации хоста WCF-сервиса мне необходимо выполнить проверку подлинности &, но я не могу найти никакой информации о том, как это поддерживает WCF. Система должна быть довольно простой, используя Имя пользователя, Пароль для аутентификации и Роль для проверки разрешений на работу.Разрешения на регистрацию и работу службы WCF

В документах и ​​учебниках WPF все, что я обнаружил, это аутентификация с использованием WinLogon, регистрационного имени IIS или сертификата безопасности и разрешений с использованием ролей и областей безопасности ASP.Net. То, что я хотел бы иметь это (псевдо пример):

myChannelFactory.Username = "myuser"; 
myChannelFactory.Password = "mypass"; 
myChannelFactory.CreateChannel(); 

и для работы контракты

[OperationContract(Permission = MySecurityRoles.Administrator)] 
public bool Reboot(); 

ответ

1

Есть много возможностей, как вы могли бы добиться этого.

Вы можете использовать сеансы и аутентифицироваться при первом вызове путем передачи имени пользователя и пароля на сервер.

http://www.codeproject.com/Articles/188749/WCF-Sessions-Brief-Introduction

Или вы могли бы (как это делается в примере кода) использовать существующие возможности и создать собственный логин и пароль валидатор на сервере. Этот пример довольно хороший:

http://msdn.microsoft.com/en-us/library/aa702565.aspx

Вы можете проверить роль в фактической реализации.

+0

Невозможно проверить роль на интерфейсе? Я буду реализовывать этот контракт во многих сервисах, я не намерен повторять свой код. :) – Atrotygma

+0

Вы можете подумать о создании настраиваемого поставщика роли: http://www.codeproject.com/Articles/13032/Custom-MembershipProvider-and-RoleProvider-Impleme – flayn

Смежные вопросы