如何根据设置在ASP.NET Core 2.0中禁用/启用身份验证?

时间:2018-02-28 07:35:03

标签: c# .net asp.net-core

我们在ASP.NET Core 2.0中有一个API,使用2种不同类型的JwtTokens进行保护。我们的控制器具有[Authorize]属性,并指定AuthorizationSchemes

这一切都很好,除了我想基于appsettings禁用它。

我花了好几个小时,但还没有解决方案。我已经看过政策,要求等等,但所有这些都需要一个令牌;因此,如果令牌不存在,则不会评估策略/要求。

我还查看了自定义Authorize属性,但建议不要这样做。

1 个答案:

答案 0 :(得分:0)

您的launchSettings.json将如下所示:

{
    "iisSettings": {
        "windowsAuthentication": true,
        "anonymousAuthentication": false,
        "iisExpress": {
            "applicationUrl": "http://localhost:52171/",
            "sslPort": 0
        }
    } // additional options trimmed
}

只需禁用所需的选项即可。

有关详细信息,请参阅此topic以获取Windows身份验证

有关身份和授权的信息,请参阅此topic

根据您的见解,我将使用此article更新我的回答。它提供了有关如何在[{1}}上存储凭据的信息,因此,一旦您在appsettings.json中拥有凭据,就可以轻松禁用它们。