2010-11-20 3 views

ответ

5

Поскольку вы используете аутентификацию Windows, вы сможете использовать группы Active Directory и членство своих пользователей внутри этих групп, чтобы ограничить использование методов службы.

При этом, вы можете использовать декларативный синтаксис для ограничения абонентов к определенным группам:

[ServiceContract] 
interface IMyService 
{ 
    [OperationContract] 
    [PrincipalPermission(SecurityAction.Demand, Role="YourCustomRole")] 
    public string MethodLimitedToGroup(string someInput); 
} 

Тот, кто не является членом этой группы вы указали, и пытается вызвать этот метод, получит SecurityException - но ничего больше.

Это вы что искали?

+0

Да, это то, что я ищу, но у меня нет отношения между ASP.Net и Active Directory. Насколько эффективен поставщик ролей Asp.net в группе пользователей Active Directory. – Nim

+0

@ Ним: извините, мое плохое - я перепутался; в службах WCF вы ничего не требуете. Использование учетных данных Windows для аутентификации должно также предоставлять эту функцию для ограничения доступа к методам для определенных групп. –

+1

Если имя романа происходит из файла конфигурации, вы не можете использовать декларативный синтаксис, поскольку значения атрибута могут быть только константой времени компиляции. В этом использовании используйте императивный эквивалент кода. – softveda

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