为安全起见,在 .net mvc 中授权整个项目的属性
Authorize attribute on entire project in .net mvc for security
我正在对每个 类 应用授权属性。
那么是否有可能避免这种情况,并立即保护我的整个 Web 应用程序?
有点像 "Namespace" 水平?
我正在使用 .net 核心 mvc 应用程序。
您应该在启动时在 ConfigureServices
方法中添加 Authorization
过滤器。
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc(options =>
{
options.Filters.Add(typeof(YourCustomAuthorizationAttribute));
});
}
以上的 None 有效。但我得到了解决方案。所以以下对我有用。
services.AddMvc(config =>
{
var policy = new AuthorizationPolicyBuilder()
.RequireAuthenticatedUser()
.Build();
config.Filters.Add(new AuthorizeFilter(policy));
});
我知道这可能晚了。但理想情况下,只有在找到授权 header 时才必须进行检查。永远不可能一个项目中的所有页面都需要认证...必须至少有一个登录页面不需要认证
我正在对每个 类 应用授权属性。
那么是否有可能避免这种情况,并立即保护我的整个 Web 应用程序?
有点像 "Namespace" 水平?
我正在使用 .net 核心 mvc 应用程序。
您应该在启动时在 ConfigureServices
方法中添加 Authorization
过滤器。
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc(options =>
{
options.Filters.Add(typeof(YourCustomAuthorizationAttribute));
});
}
None 有效。但我得到了解决方案。所以以下对我有用。
services.AddMvc(config =>
{
var policy = new AuthorizationPolicyBuilder()
.RequireAuthenticatedUser()
.Build();
config.Filters.Add(new AuthorizeFilter(policy));
});
我知道这可能晚了。但理想情况下,只有在找到授权 header 时才必须进行检查。永远不可能一个项目中的所有页面都需要认证...必须至少有一个登录页面不需要认证