ASP.NETCoreWebAPI控制器中的Authorize属性与Roles不起作用。
创始人
2024-09-18 09:30:14
0

在 ASP.NET Core 中使用 Authorize 属性来控制访问 WebAPI 中的方法和动作。要使用 Roles 参数,必须将用户角色分配给用户。如果您无法使用 Roles 获取授权,请使用 Policy 参数并指定策略名称。

以下是代码示例:

  1. 首先,您需要在 Startup.cs 文件中设置策略:
services.AddAuthorization(options =>
{
    options.AddPolicy("MyPolicy", policy =>
    {
        policy.RequireAuthenticatedUser();
        policy.RequireRole("Admin");
    });
});

这将允许仅具有“Admin”角色的用户访问 MyPolicy 策略。

  1. 然后,在控制器的方法或动作上应用 Authorize 属性并使用您刚刚设置的策略名称:
[ApiController]
[Route("[controller]")]
public class MyController : ControllerBase
{
    [HttpGet]
    [Authorize(Policy = "MyPolicy")]
    public IActionResult Get()
    {
        return Ok("Authorized");
    }
}

现在,只有具有“Admin”角色的用户才能访问 Get 方法。

注意:为了使上面的示例正常工作,您需要在 UserManager 或 RoleManager 中设置角色。

相关内容

热门资讯

六分钟了解!雀神辅助器免费下载... 六分钟了解!雀神辅助器免费下载(辅助挂)竟然真的有挂(有挂神器)-哔哩哔哩;人气非常高,ai更新快且...
玩家必用!wepoke防外挂!... 玩家必用!wepoke防外挂!确实是真的有挂((2021已更新))(哔哩哔哩)1、这是跨平台的wep...
九分钟普及!wpk德州透视辅助... 1、九分钟普及!wpk德州透视辅助(透视)软件透明挂((2025已更新))(哔哩哔哩);详细教程。2...
重大发现!广东雀神免费智能辅助... 重大发现!广东雀神免费智能辅助下载(辅助挂)果真真的有挂(真实有挂)-哔哩哔哩;是一款可以让一直输的...
研究成果!aapoker辅助软... 研究成果!aapoker辅助软件!竟然真的有挂((2020已更新))(哔哩哔哩)是一款可以让一直输的...
十分钟普及!扑克王辅助工具(辅... 十分钟普及!扑克王辅助工具(辅助挂)辅助透视((2022已更新))(哔哩哔哩)是一款可以让一直输的玩...
透明教学!雀神广东麻雀正规(辅... 透明教学!雀神广东麻雀正规(辅助挂)原来是真的有挂(有挂技术)-哔哩哔哩;一、雀神广东麻雀正规AI软...
盘点一款!德州之星辅助透视!其... 盘点一款!德州之星辅助透视!其实真的有挂((2022已更新))(哔哩哔哩)是一款可以让一直输的玩家,...
7分钟普及!EV扑克辅助软件(... 您好,EV扑克这款游戏可以开挂的,确实是有挂的,需要了解加微【439369440】很多玩家在这款游戏...
玩家攻略推荐!雀神麻将辅牌器购... 玩家攻略推荐!雀神麻将辅牌器购买(辅助挂)果真真的有挂(有挂详细)-哔哩哔哩1、完成雀神麻将辅牌器购...