如何在登录方法中为用户设置角色 - Asp.net MVC

时间:2018-02-28 10:36:22

标签: asp.net-mvc web-services asp.net-mvc-4

这是使用Web Service来获取或设置数据库数据的项目。

对于登录方法,我发送用户名和密码,如果正确,web service将返回角色和身份。

如何为此用户设置此角色?

我必须为每个动作检查此角色。

2 个答案:

答案 0 :(得分:1)

要允许每个用户按其角色使用:

[Authorize(Roles = "Admin")]
    public class SomeController : Controller

或者如果您愿意,您可以单独允许每种方法:

[Authorize(Roles = "Admin")]
public async Task<IActionResult> Index()

我没有得到你的要求,但我再次阅读了标题,如果你想为用户分配一个角色,请使用:

await _userManager.AddToRoleAsync(user, "Guest");

担任"Guest"角色。 我认为你应该在寄存器方法上使用它而不是登录。 希望这会有所帮助。

答案 1 :(得分:0)

使用基于角色的授权过滤器这样的事情

[Authorize(Roles = "Administrator")]

public class AdministrationController:Controller { }