ASP Core 2.2中的“Authorize Roles Controller Attribute不起作用”
创始人
2024-11-11 16:00:20
0

在ASP.NET Core 2.2中,如果在Controller上使用了[Authorize(Roles="role1, role2")]属性,而该属性在运行时没有起作用,可以按照以下步骤解决:

  1. 确保已经正确配置了身份验证和授权服务,例如在Startup.cs文件的ConfigureServices方法中添加以下代码:
services.AddAuthentication("CookieAuth")
    .AddCookie("CookieAuth", config =>
    {
        config.Cookie.Name = "YourCookieName";
        config.LoginPath = "/Account/Login";
    });

services.AddAuthorization(config =>
{
    config.AddPolicy("Admin", policy =>
    {
        policy.RequireRole("Admin");
    });
});
  1. 确保在Configure方法中调用UseAuthentication和UseAuthorization中间件:
app.UseAuthentication();
app.UseAuthorization();
  1. 确保用户在登录时被分配了正确的角色。例如,在登录成功后,为用户分配角色:
var claims = new List
{
    new Claim(ClaimTypes.Name, "John"),
    new Claim(ClaimTypes.Email, "john@example.com"),
    new Claim(ClaimTypes.Role, "Admin") // 分配"Admin"角色
};

var identity = new ClaimsIdentity(claims, "CookieAuth");
var principal = new ClaimsPrincipal(identity);

await HttpContext.SignInAsync("CookieAuth", principal);
  1. 确保Controller类上的[Authorize(Roles="role1, role2")]属性正确设置了角色名称,并且用户被分配了相应的角色。

如果按照以上步骤操作后,[Authorize(Roles="role1, role2")]仍然不起作用,可以尝试以下额外的解决方法:

  1. 尝试使用逗号分隔角色名称:
[Authorize(Roles="role1,role2")]
  1. 确保角色名称的大小写匹配。有时,角色名称的大小写可能会导致授权失败。

  2. 如果在使用自定义角色提供程序,确保角色提供程序正确设置和配置。

通过以上步骤,应该能够解决ASP.NET Core 2.2中[Authorize(Roles="role1, role2")]不起作用的问题。

相关内容

热门资讯

黑科技攻略(Wepoke开挂)... 黑科技攻略(Wepoke开挂)外挂透明挂辅助ai代打(黑科技ai)其实是真的有挂(有挂讲解)-哔哩哔...
黑科技有挂(aapoker辅助... 黑科技有挂(aapoker辅助)外挂透明挂辅助挂(透明挂黑科技)都是是有挂(有挂方式)-哔哩哔哩1、...
黑科技好牌(wpk机制)外挂透... 黑科技好牌(wpk机制)外挂透明挂辅助下载(透明挂黑科技)一直是真的有挂(有挂秘籍)-哔哩哔哩;1、...
黑科技教学(德州ai智能)外挂... 黑科技教学(德州ai智能)外挂透明挂辅助代打(透明挂黑科技)都是是有挂(确实有挂)-哔哩哔哩该软件可...
黑科技黑科技(众合推扑克)外挂... 黑科技黑科技(众合推扑克)外挂透明挂辅助神器(透明黑科技)确实真的有挂(今日头条)-哔哩哔哩众合推扑...
黑科技辅助(wpk辅助器)外挂... 黑科技辅助(wpk辅助器)外挂透明挂辅助代打(ai辅助)确实是真的有挂(有挂细节)-哔哩哔哩1、wp...
黑科技挂(aapker代理)外... 黑科技挂(aapker代理)外挂透明挂辅助挂(智能ai)好像是真的有挂(了解有挂)-哔哩哔哩1、构建...
黑科技神器(云扑克德州)外挂透... 黑科技神器(云扑克德州)外挂透明挂辅助AI(辅助挂)都是有挂(真的有挂)-哔哩哔哩1、黑科技神器(云...
黑科技模拟器(Wepoke教学... 黑科技模拟器(Wepoke教学)外挂透明挂辅助黑科技(透明挂黑科技)竟然真的是有挂(有挂细节)-哔哩...
黑科技工具(WPK存在)外挂透... 黑科技工具(WPK存在)外挂透明挂辅助设备(透明挂黑科技)竟然是真的有挂(有挂秘籍)-哔哩哔哩1、W...