WCF (SOAP): защита отдельных операций с помощью специального валидатора UserName - похоже на то, что предлагает WcfRestContrib, но для мыла? - PullRequest
0 голосов
/ 22 января 2011

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

Следовательно, некоторые методы защищены, а другие нет.Я знаю, что есть атрибут с именем PrincipalPermission, но он работает с Windows

. Я надеялся, что что-то существовало для WCF Soap, как и для WCF Rest в этом проекте contrib.WcfRestContrib

Этот дополнительный проект позволяет использовать пользовательский валидатор имени пользователя и пароля и позволяет защищать только определенные методы, декорируя методы атрибутом

Возможно ли это с WCF (мыло)?

Заранее спасибо

1 Ответ

0 голосов
/ 22 января 2011

Да, можно выполнять проверки авторизации на уровне операций с помощью SOAP в WCF, но вам потребуется авторизация на основе утверждений (насколько я знаю). Это то, что моя команда делает для нашего продукта.

Точка подключения в WCF заключается в реализации пользовательского ServiceAuthorizationManger

ServiceAuthorizationManager.CheckAccessCore Method

Как: создать собственный диспетчер авторизации для службы

и включите это в свое служебное поведение:

<behaviors>
  <serviceBehaviors>
    <behavior name="ServiceBehavior">
      <serviceAuthorization serviceAuthorizationManagerType="MyServiceAuthorizationManager" />
    </behavior>
  </serviceBehaviors>

При реализации диспетчера авторизации переопределите CheckAccessCore, а затем просто верните true / false, если они авторизованы или нет.

...