【发布时间】:2016-09-16 09:52:58
【问题描述】:
我希望将我的后端管理区域限制为具有管理员角色的人员。我读过一篇文章说政策是要走的路。但是,每当我添加属性时,我都会被重定向到 AccessDenied 页面。
我显然有这个角色
StartUp.cs
var defaultPolicy = new AuthorizationPolicyBuilder()
.RequireAuthenticatedUser()
.RequireRole("Administrator")
.Build();
services.AddMvc(setup =>
{
setup.Filters.Add(new AuthorizeFilter(defaultPolicy));
});
属性定义
[Authorize("Administrator")]
- 那么,如果我既通过了身份验证,又拥有了角色,为什么我什么也做不到?
- 您如何命名策略,例如 Authorize("Administrator") 我不确定“Administrator”的来源(文章也不清楚)。
【问题讨论】:
-
即使我删除了所有策略内容并尝试根据角色名称进行检查(这是传统方式?)它仍然会将我转储到未经授权的页面。 [授权(角色=“管理员”)]
标签: asp.net-core authorization asp.net-identity