Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/381.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/34.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 4 具有SimpleMembership的动态角色/层次结构_Asp.net Mvc 4_Authorization_Simplemembership - Fatal编程技术网

Asp.net mvc 4 具有SimpleMembership的动态角色/层次结构

Asp.net mvc 4 具有SimpleMembership的动态角色/层次结构,asp.net-mvc-4,authorization,simplemembership,Asp.net Mvc 4,Authorization,Simplemembership,我终于用SimpleMembership安装了我的MVC4应用程序,但现在遇到了一个新问题。我有一个菜单系统(在侧边栏中),让用户可以访问整个应用程序的各种功能。我最近意识到,为了更方便用户,我需要根据角色禁用或删除各种菜单链接。因此,我建立了一个角色系统,并与这些菜单链接建立了关系,这非常有效。但是,“基本站点访问”角色不应访问菜单中的所有链接(及其相应的控制器/操作)。以前,我只需通过我的过滤器配置全局应用Authorize属性,即可访问站点: public static void Regi

我终于用SimpleMembership安装了我的MVC4应用程序,但现在遇到了一个新问题。我有一个菜单系统(在侧边栏中),让用户可以访问整个应用程序的各种功能。我最近意识到,为了更方便用户,我需要根据角色禁用或删除各种菜单链接。因此,我建立了一个角色系统,并与这些菜单链接建立了关系,这非常有效。但是,“基本站点访问”角色不应访问菜单中的所有链接(及其相应的控制器/操作)。以前,我只需通过我的过滤器配置全局应用
Authorize
属性,即可访问站点:

public static void RegisterGlobalFilters(GlobalFilterCollection filters)
{
    filters.Add(new AuthorizeAttribute());
}
现在我发现,为了控制对应用程序的“基本”访问,我需要在操作级别添加个人
Authorize
属性(“管理员”角色具有完全访问权限)。虽然这很好,尽管有点烦人,但它似乎不是很可扩展。如果我的客户机通过管理界面添加了一个新角色,并希望控制对各种任务的访问,该怎么办?我已经对菜单系统进行了编码,根据哪些角色可以访问哪些任务,动态禁用链接。但是(据我所知)没有办法对
Authorize
属性动态应用不同的角色


虽然我已经读过,但我刚刚完成了从ASP.NET成员身份的迁移(ASP.NET成员身份本身存在严重缺陷),我当然不想推出自己的用户/角色管理系统。有人成功地实现了一些东西来处理这个场景吗

如果你有很多控制器/动作不想用注释来修饰,你一定要看看


它允许从Global.asax处理所有授权。它有很好的文档记录,并且有一个很好的教程。

我从未听说过这个,但它看起来很有前途。谢谢我将把这个问题留一点时间,看看是否还有其他人想参与进来。Fluent Security是否满足您的要求?抱歉,我还没有时间实现它!当我有机会玩它的时候,我肯定会再发一次。已经有一段时间了,链接已经死了,发现