如何限制使用WCF服务的用户

时间:2010-11-20 20:25:08

标签: wcf wcf-security

我有一个必须由某个Active Directory用户调用的WCF服务。

如何将该WCF服务的允许呼叫者限制为特定的AD组?

1 个答案:

答案 0 :(得分:5)

由于您似乎使用的是Windows身份验证,因此您可以使用Active Directory组以及这些组中用户的成员身份来限制服务方法的使用。

通过这种方式,您可以使用声明性语法将呼叫者限制为某些组:

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

如果您不是指定该群组的成员且尝试调用此方法,则会收到SecurityException - 但不会有任何其他内容。

这就是你要找的东西吗?