WCF是否具有MVC的[Authorize]属性的等价物?

Dmi*_*kov 11 .net wcf

我想用一个属性来装饰某些操作契约,以通过自定义逻辑来授权调用者,如下所示:

[ServiceBehavior]
public class Service1
{
    [OperationContract]
    [Authorize] // ?? this should make sure only admins can call this method
    public List<SampleItem> GetCollection()
    {
        return new List<SampleItem>() { new SampleItem("Only Admins see me") };
    }
}
Run Code Online (Sandbox Code Playgroud)

[授权]应检查呼叫者是否有权呼叫此操作; 如果不是 - 它应该返回错误错误.

谢谢.

mar*_*c_s 21

不是开箱即用 - 但WCF的顶级大师JuvalLöwy在MSDN杂志上发表了一篇关于声明性WCF安全性的非常有趣的文章.

Juval确定了几个关键的安全方案,并将每个方案包装成WCF服务行为,以作为服务器端服务类的属性应用.相当有趣的阅读确实!