基于HttpVerb的ASP.Net核心全局授权过滤器

时间:2017-03-17 02:52:09

标签: c# authentication asp.net-core authorization httpverbs

我正在尝试创建一个简单的策略,它将允许所有HttpGet的匿名请求默认获取并授权其他任何内容(放置,修补,发布,删除等)

目前,我需要在任何地方进行授权:

var authorizationPolicy = new AuthorizationPolicyBuilder()
        .RequireAuthenticatedUser()
        .Build();

services.AddMvc(config => config.Filters.Add(new AuthorizeFilter(authorizationPolicy)))

但实际上我想做这样的事情:

var authorizationPolicy = new AuthorizationPolicyBuilder()
        .RequireAuthenticatedUser(opt => opt.DesinationCalls.Where(m =>
             false == m.Attributes.Any(x => x == "HttpGet"))).Build();

我不想记得为控制器添加属性, 有谁知道如何通过Http Verb过滤我的默认授权策略?

0 个答案:

没有答案