Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 3 MVC3中基于角色的身份验证_Asp.net Mvc 3_User Roles - Fatal编程技术网

Asp.net mvc 3 MVC3中基于角色的身份验证

Asp.net mvc 3 MVC3中基于角色的身份验证,asp.net-mvc-3,user-roles,Asp.net Mvc 3,User Roles,在我的数据库中,我有一些用户及其角色。我可以根据用户输入对用户进行身份验证。现在,我想从数据库中检索角色,并根据每个控制器的角色对用户进行身份验证。身份验证和授权是两件不同的事情。如果希望基于角色授权某人,则可以使用以下内容装饰类或方法: [Authorize(Roles = "admin")] 这样,控制器将拒绝任何没有管理员角色的人 较新版本的MVC有更好的授权和身份验证选项,但这是MVC3中常用的选项。这很好,但如何在从数据库检索详细信息时将用户作为管理员进行比较。Roles.G

在我的数据库中,我有一些用户及其角色。我可以根据用户输入对用户进行身份验证。现在,我想从数据库中检索角色,并根据每个控制器的角色对用户进行身份验证。

身份验证和授权是两件不同的事情。如果希望基于角色授权某人,则可以使用以下内容装饰类或方法:

    [Authorize(Roles = "admin")]
这样,控制器将拒绝任何没有管理员角色的人


较新版本的MVC有更好的授权和身份验证选项,但这是MVC3中常用的选项。

这很好,但如何在从数据库检索详细信息时将用户作为管理员进行比较。Roles.GetRolesForUserUser.Identity.Name类似的名称如果不使用,该属性将处理该名称。它确保登录的标识具有“admin”类型的角色。我不完全确定您还想完成什么,但是是的,您可以使用您提到的方法获取用户的所有角色,如果您不提供任何参数,它将获取当前用户的角色。谢谢。。!查德·麦克格拉斯