2012-07-25 64 views
1

我使用C#-MVC3(for web)。如何在MVC3上创建动态角色和授权

我想创建一个在网站上做的操作列表(例如 - 打开一篇新文章,评论一篇文章等),网站的管理员将创建角色(管理员,文章管理员,编辑者,客人等)以及每个角色 - 选择可以执行的操作(从列表中)。

我想使用“角色”和“授权”属性,但它不是动态的。 我该怎么做?

回答

1

您可以创建一个AuthorizationFilter并将其实现为包含角色的动态检查。

有关使用此示例:http://geekswithblogs.net/brians/archive/2010/07/08/implementing-a-custom-asp.net-mvc-authorization-filter.aspx

请注意,上面的例子中使用角色的静态列表,但显示了AuthorizationFiter的基本设置。这可以通过修改OnAuthorization()方法轻松进行修改。

+0

我不确定它对我有多大帮助。假设我有一个角色“MyRole”,并且该网站的管理员选择让此角色编辑page_1和查看page_2。我不能在操作前使用“授权”属性,因为我不知道该网站的管理员会选择什么,所以我该如何处理? – TamarG 2012-07-26 12:14:43