> 文档中心 > ASP.NET Core MVC 全局设置用户认证要求

ASP.NET Core MVC 全局设置用户认证要求

在一些应用程序中,我们可能需要对所有请求都要求登录的用户才能访问。我们不可能在所有的控制器中一一添加认证属性。如何在一处设置就可以达到要求呢?

有以下两种方法:

第一种是在添加授权服务的时候,设置一个授权策略,要求认证的用户用才能访问,具体如下

// 授权services.AddAuthorization(options =>{      // Fallback authentication policy      // 设置授权策略,要求认证的用户      options.FallbackPolicy = new AuthorizationPolicyBuilder().RequireAuthenticatedUser().Build();});

第二种方法是在添加 MVC 服务时设置过滤器:

var policy = new AuthorizationPolicyBuilder()    .RequireAuthenticatedUser()    .Build();config.Filters.Add(new AuthorizeFilter(policy));