删除特定API调用的授权规则

时间:2019-03-12 11:49:13

标签: c# asp.net-web-api authorize system.web.http

我有一个WEB Api控制器,该控制器的顶部带有[Authorize]标记-这意味着此类中的所有API都将应用此规则。像这样:

    [Authorize]
    [RoutePrefix("api/v1/route")]
        public class ItemController : ApiController
    {
/// Etc...

我的问题是,对于此类中的特定调用,我不希望应用此Auth规则。我敢肯定,我之前已经看过这样做的方法,但是对于我所有的谷歌搜索我都找不到。我认为是这样的:

        [HttpPost]
        [Route("singleCall")]
        [NOTAUTH]//whatever should go in here
        public void Log()
        {

任何想法?

2 个答案:

答案 0 :(得分:3)

看看[AllowAnonymous]

This page有一些示例。

答案 1 :(得分:2)

您可以使用[AllowAnonymous]属性。 请参考本文,以了解如何将它们与[Authorize]属性结合使用。 ASP.NET MVC AllowAnonymous Attribute and Authorize Attribute